# Methods

Isotope offers several methods to extend functionality. Isotope’s methods follow the jQuery UI pattern.

## addItems

Adds item elements to the pool of item elements of the container, but does not sort, filter or layout. See Adding items for more details. The argument within the callback is the group of elements that were added.

See Demo: Adding items

## appended

Adds item elements via `addItems` method, then triggers `layout` just for those new elements. Useful for Infinite Scroll. See Adding items for more details.

See Demo: Adding items

## destroy

Removes Isotope functionality completely. Returns element back to pre-init state.

## insert

Appends items elements to container, adds items to via `addItems` method, and then triggers `reLayout` method so new elements are properly filtered, sorted and laid-out. See Adding items for more details.

See Demo: Adding items.

## layout

Positions specified item elements in layout.

`layout` will only position specified elements, and those elements will be positioned at the end of layout. Whereas `reLayout` will position all elements in the Isotope widget.

## option

Sets options for plugin instance. Unlike passing options through `.isotope()`, using the `option` method will not trigger layout.

## reLayout

Resets layout properties and lays-out every item element.

See Demo: reLayout

## reloadItems

Re-collects all item elements in their current order in the DOM. Useful for prepending.

See Demo: Adding items.

## remove

Removes specified item elements from Isotope widget and the DOM.

See Demo: Removing.

## shuffle

Shuffles order of items. Sets `sortBy` option to `'random'`.

## updateSortData

Updates the sorting data on specified item elements. This method is useful if the data within an item is changed dynamically after Isotope has been initialized.