enmi12/glossaire/_posts/docs/2010-12-03-options.mdown
author ymh <ymh.work@gmail.com>
Mon, 14 Oct 2019 17:39:30 +0200
changeset 7 cf61fcea0001
parent 0 d970ebf37754
permissions -rwxr-xr-x
resynchronize code repo with production
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
---
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
title: Options
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
category: docs
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
layout: default
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
body_class: option-def
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
toc:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
  - { title: animationEngine, anchor: animationengine }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
  - { title: animationOptions, anchor: animationoptions }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
  - { title: containerClass, anchor: containerclass }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
  - { title: containerStyle, anchor: containerstyle }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
  - { title: filter, anchor: filter }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
  - { title: getSortData, anchor: getsortdata }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
  - { title: hiddenClass, anchor: hiddenclass }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
  - { title: hiddenStyle, anchor: hiddenstyle }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
  - { title: itemClass, anchor: itemclass }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
  - { title: itemPositionDataEnabled, anchor: itempositiondataenabled }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
  - { title: itemSelector, anchor: itemselector }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
  - { title: layoutMode, anchor: layoutmode }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
  - { title: onLayout, anchor: onlayout }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
  - { title: resizable, anchor: resizable }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
  - { title: resizesContainer, anchor: resizescontainer }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
  - { title: sortAscending, anchor: sortascending }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
  - { title: sortBy, anchor: sortby }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
  - { title: transformsEnabled, anchor: transformsenabled }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
  - { title: visibleStyle, anchor: visiblestyle }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
  - { title: Layout-specific options, anchor: layoutspecific_options }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
---
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
<dl class="header clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
  <dt><code>option</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
  <dd class="option-type">Type</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
  <dd class="default">Default</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
## animationEngine
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
  <dt><code>animationEngine</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
  <dd class="option-type">String</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
  <dd class="default"><code><span class="s1">'best-available'</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
Determines the jQuery method to apply styles, `.css()` or `.animate()`. Useful for relying on CSS transitions to handle animation.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
### Values {#animationEngine-values}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
+ `'best-available'`: if browser supports CSS transitions, Isotope uses `.css()`. If not, falls back to using `.animate()`.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
+ `'css'`: Isotope uses `.css()`
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
+ `'jquery'`: Isotope uses `.animate()`
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
## animationOptions
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
  <dt><code>animationOptions</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
  <dd class="option-type">Object</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
  <dd class="default"><code>{ queue: <span class="kc">false</span>, duration: <span class="mi">800</span> }</code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
When jQuery is the animation engine (see above), these options will be used in <code>.animate()</code>. See the [jQuery API for animate options](http://api.jquery.com/animate/#animate-properties-options) for details.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
### Example
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
{% highlight javascript %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
$('#container').isotope({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
  animationOptions: {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
     duration: 750,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
     easing: 'linear',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
     queue: false
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
   }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
{% endhighlight %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
## containerClass
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
  <dt><code>containerClass</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
  <dd class="option-type">String</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
  <dd class="default"><code><span class="s1">'isotope'</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
The class applied to the container element.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
## containerStyle
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
  <dt><code>containerStyle</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
  <dd class="option-type">Object</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
  <dd class="default"><code>{ position: <span class="s1">'relative'</span>, overflow: <span class="s1">'hidden'</span> }</code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
CSS styles applied to the container element. Relative positioning enables absolute positioning on child items. Hidden overflow ensures that filtered items that lie outside the container do not interfer with subsequent content.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
## filter
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
  <dt><code>filter</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
  <dd class="option-type">Selector</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
Setting a filter with show item elements that match the selector, and hide elements that do not match. See [docs on filering](filtering.html) for more details.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
[**See Demo: Filtering**](../demos/filtering.html)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   108
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
### Values {#filter-values}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
<ul>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
  <li><code><span class="s1">'*'</span></code> or <code><span class="s1">''</span></code> (an empty string): Shows all item elements</li>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
</ul>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   115
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
## getSortData
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   118
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
  <dt><code>getSortData</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
  <dd class="option-type">Object</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
An object containing one or several methods to retrieve data for Sorting. The methods receive one parameter (`$elem` in the example below) which is a jQuery object representing each item element. The methods need to return a value. See [docs on sorting](sorting.html) for more details.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
[**See Demo: Sorting**](../demos/sorting.html)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   127
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   128
### Example
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
{% highlight javascript %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   131
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   132
$('#container').isotope({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   133
  getSortData : {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   134
    symbol : function( $elem ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   135
      return $elem.attr('data-symbol');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   136
    },
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   137
    number : function( $elem ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   138
      return parseInt( $elem.find('.number').text(), 10 );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   139
    },
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   140
    name : function ( $elem ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   141
      return $elem.find('.name').text();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   142
    }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   143
  }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   144
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   145
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   146
{% endhighlight %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   147
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   148
## hiddenClass
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   149
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   150
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   151
  <dt><code>hiddenClass</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   152
  <dd class="option-type">String</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   153
  <dd class="default"><code><span class="s1">'isotope-hidden'</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   154
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   155
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   156
The class applied to item elements hidden by Filtering.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   157
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   158
## hiddenStyle
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   159
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   160
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   161
  <dt><code>hiddenStyle</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   162
  <dd class="option-type">Object</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   163
  <dd class="default"><code>{ opacity : <span class="mi">0</span>, scale : <span class="mi">0.001</span> }</code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   164
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   165
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   166
The style applied to item elements hidden by Filtering.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   167
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   168
## itemClass
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   169
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   170
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   171
  <dt><code>itemClass</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   172
  <dd class="option-type">String</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   173
  <dd class="default"><code><span class="s1">'isotope-item'</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   174
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   175
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   176
The class applied to item elements.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   177
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   178
## itemPositionDataEnabled
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   179
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   180
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   181
  <dt><code>itemPositionDataEnabled</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   182
  <dd class="option-type">Boolean</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   183
  <dd class="default"><code><span class="kc">false</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   184
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   185
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   186
When enabled, the position of item elements will exposed as data, which you can retrieve with jQuery's data method with <code><span class="s1">'isotope-item-position'</span></code> name space. Position is return as an object with `x` and `y`;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   187
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   188
### Example
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   189
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   190
{% highlight javascript %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   191
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   192
$('#container').isotope({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   193
  itemSelector: '.element',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   194
  itemPositionDataEnabled: true
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   195
})
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   196
// log position of each item
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   197
.find('.element').each(function(){
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   198
  var position = $(this).data('isotope-item-position');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   199
  console.log('item position is x: ' + position.x + ', y: ' + position.y  );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   200
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   201
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   202
{% endhighlight %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   203
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   204
## itemSelector
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   205
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   206
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   207
  <dt><code>itemSelector</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   208
  <dd class="option-type">Selector</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   209
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   210
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   211
Restricts Isotope item elements to selector.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   212
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   213
## layoutMode
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   214
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   215
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   216
  <dt><code>layoutMode</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   217
  <dd class="option-type">String</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   218
  <dd class="default"><code><span class="s1">'masonry'</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   219
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   220
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   221
See also docs on [Layout modes](layout-modes.html).
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   222
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   223
[**See Demo: Layout modes**](../demos/layout-modes.html)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   224
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   225
## onLayout
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   226
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   227
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   228
  <dt><code>onLayout</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   229
  <dd class="option-type">Function</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   230
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   231
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   232
Similiar to a callback, `onLayout` is a function that will be triggered after every time an Isotope instance runs through its layout logic.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   233
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   234
{% highlight javascript %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   235
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   236
$('#container').isotope({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   237
  onLayout: function( $elems, instance ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   238
    // `this` refers to jQuery object of the container element
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   239
    console.log( this.height() );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   240
    // callback provides jQuery object of laid-out item elements
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   241
    $elems.css({ background: 'blue' });
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   242
    // instance is the Isotope instance
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   243
    console.log( instance.$filteredAtoms.length );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   244
  }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   245
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   246
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   247
{% endhighlight %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   248
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   249
## resizable
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   250
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   251
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   252
  <dt><code>resizable</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   253
  <dd class="option-type">Boolean</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   254
  <dd class="default"><code><span class="kc">true</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   255
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   256
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   257
Triggers layout logic when browser window is resized. 
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   258
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   259
## resizesContainer
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   260
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   261
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   262
  <dt><code>resizesContainer</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   263
  <dd class="option-type">Boolean</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   264
  <dd class="default"><code><span class="kc">true</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   265
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   266
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   267
Isotope will set the height (for vertical layout modes) or width (for horizontal layout modes) of the container after layout. If `resizesContainer` is set to <code><span class="kc">false</span></code>, be sure to set a size for the container in your CSS, so it doesn't collapse when Isotope is triggered.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   268
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   269
## sortAscending
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   270
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   271
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   272
  <dt><code>sortAscending</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   273
  <dd class="option-type">Boolean</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   274
  <dd class="default"><code><span class="kc">true</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   275
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   276
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   277
Used with sorting. If true, items are sorted ascending: "1, 2, 3" or "A, B, C...". If false, items are sorted descending "Z, Y, X" or "9, 8, 7...". See [docs on sorting](sorting.html) for more details.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   278
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   279
[**See Demo: Sorting**](../demos/sorting.html)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   280
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   281
## sortBy
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   282
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   283
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   284
  <dt><code>sortBy</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   285
  <dd class="option-type">String</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   286
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   287
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   288
The property name of the method within the `getSortData` option to sort item elements.  See [docs on sorting](sorting.html) for more details.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   289
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   290
[**See Demo: Sorting**](../demos/sorting.html)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   291
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   292
### Values {#sortBy-values}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   293
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   294
+ `'original-order'` Sorts item elements by their original order.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   295
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   296
## transformsEnabled
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   297
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   298
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   299
  <dt><code>transformsEnabled</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   300
  <dd class="option-type">Boolean</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   301
  <dd class="default"><code><span class="kc">true</span></code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   302
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   303
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   304
Isotope uses CSS3 transforms to position item elements, when available in the browser. Setting `transformsEnabled` to <code><span class="kc">false</span></code> will disable this feature so all browsers use top/left absolute positioning. Useful for [resolving issues with CSS transforms](help.html#css-transforms).
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   305
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   306
### Additional CSS {#transformsEnabled-css}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   307
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   308
If you do disable transforms, but still want to use [CSS transitions](animating.html#css_transitions), you'll need add the following CSS:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   309
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   310
{% highlight css %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   311
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   312
.isotope .isotope-item {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   313
  -webkit-transition-property: top, left, opacity;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   314
     -moz-transition-property: top, left, opacity;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   315
      -ms-transition-property: top, left, opacity;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   316
       -o-transition-property: top, left, opacity;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   317
          transition-property: top, left, opacity;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   318
}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   319
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   320
{% endhighlight %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   321
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   322
## visibleStyle
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   323
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   324
<dl class="clearfix">
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   325
  <dt><code>visibleStyle</code></dt>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   326
  <dd class="option-type">Object</dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   327
  <dd class="default"><code>{ opacity : <span class="mi">1</span>, scale : <span class="mi">1</span> }</code></dd>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   328
</dl>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   329
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   330
The style applied to item elements made visible by Filtering.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   331
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   332
## Layout-specific options
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   333
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   334
In addition the general options listed above, certain layout modes each have their own options. In order to avoid conflict, these options are set with an option that matches the name of the layout mode.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   335
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   336
See docs on [layout modes](layout-modes.html) for each layout mode's available options.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   337
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   338
For example, if your layout switched from `masonry` to `cellsByRow`:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   339
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   340
{% highlight javascript %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   341
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   342
$('#container').isotope({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   343
  masonry: {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   344
    columnWidth: 120
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   345
  },
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   346
  cellsByRow: {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   347
    columnWidth: 220,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   348
    rowHeight: 220
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   349
  }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   350
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   351
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   352
{% endhighlight %}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   353
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   354
[**See Demo: Layout modes**](../demos/layout-modes.html)