---
title: Options
category: docs
layout: doc
body_class: option-def
---
## animationEngine
animationEngine
- String
'best-available'
Determines the jQuery method to apply styles, `.css()` or `.animate()`. Useful for relying on CSS transitions to handle animation.
### Values {#animationEngine-values}
+ `'best-available'`: if browser supports CSS transitions, Isotope uses `.css()`. If not, falls back to using `.animate()`.
+ `'css'`: Isotope uses `.css()`
+ `'jquery'`: Isotope uses `.animate()`
## animationOptions
animationOptions
- Object
{ queue: false, duration: 800 }
When jQuery is the animation engine, these options will be used in .animate()
. See the [jQuery API for animate options](http://api.jquery.com/animate/#animate-properties-options) for details.
### Example
{% highlight javascript %}
$('#container').isotope({
animationOptions: {
duration: 750,
easing: 'linear',
queue: false
}
});
{% endhighlight %}
## containerClass
containerClass
- String
'isotope'
The class applied to the container element.
## filter
filter
- Selector
Setting a filter with show item elements that match the selector, and hide elements that do not match.
### Values {#filter-values}
+ `'*'` Shows all item elements
## getSortData
getSortData
- Object
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.
### Example
{% highlight javascript %}
$('#container').isotope({
getSortData : {
symbol : function( $elem ) {
return $elem.attr('data-symbol');
},
number : function( $elem ) {
return parseInt( $elem.find('.number').text(), 10 );
},
name : function ( $elem ) {
return $elem.find('.name').text();
}
}
});
{% endhighlight %}
## hiddenClass
hiddenClass
- String
'isotope-hidden'
The class applied to item elements hidden by Filtering.
## hiddenStyle
hiddenStyle
- Object
{ opacity : 0, scale : 0.001 }
The style applied to item elements hidden by Filtering.
## itemSelector
itemSelector
- Selector
Restricts Isotope item elements to selector.
## layoutMode
layoutMode
- String
'masonry'
See also docs on [Layout Modes](layout-modes.html).
[**See Demo: Layout Modes**](../demos/layout-modes.html)
## resizeable
resizeable
- Boolean
true
Triggers layout logic when browser window is resized.
## sortAscending
sortAscending
- Boolean
true
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...".
## sortBy
sortBy
- String
The property name of the method within the `getSortData` option to sort item elements.
Looking at the `getSortData` example above, valid values would be `'symbol'`, `'number'`, or `'name'`.
### Values {#sortBy-values}
+ `'original-order'` Sorts item elements by their original order.
## visibleStyle
visibleStyle
- Object
{ opacity : 1, scale : 1 }
The style applied to item elements made visible by Filtering.
## Layout-specific options
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.
See [Layout modes](layout-modes.html) for each layout mode's available options.
For example, if your layout switched from `masonry` to `cellsByRow`:
{% highlight javascript %}
$('#container').isotope({
masonry: {
columnWidth: 120
},
cellsByRow: {
columnWidth: 220,
rowHeight: 220
}
});
{% endhighlight %}
[**See Demo: Layout Modes**](../demos/layout-modes.html)