@ -1,5 +1,5 @@
/ * *
* Isotope v1 . 3.110523
* Isotope v1 . 3.110524
* An exquisite jQuery plugin for magical layouts
* http : //isotope.metafizzy.co
*
@ -387,10 +387,8 @@
this . reloadItems ( ) ;
// get top left position of where the bricks should be
var $cursor = $ ( document . createElement ( 'div' ) ) ;
this . element . prepend ( $cursor ) ;
this . posTop = Math . round ( $cursor . position ( ) . top ) ;
this . posLeft = Math . round ( $cursor . position ( ) . left ) ;
var $cursor = $ ( document . createElement ( 'div' ) ) . prependTo ( this . element ) ;
this . offset = $cursor . position ( ) ;
$cursor . remove ( ) ;
// add isotope class first time around
@ -441,8 +439,7 @@
} ,
option : function ( key , value ) {
// get/change options AFTER initialization:
// change options AFTER initialization:
// signature: $('#foo').bar({ cool:false });
if ( $ . isPlainObject ( key ) ) {
this . options = $ . extend ( true , this . options , key ) ;
@ -450,11 +447,6 @@
for ( optionName in key ) {
this . _updateOption ( optionName ) ;
}
// signature: $('#foo').bar('option', 'baz', false);
} else {
this . options [ key ] = value ;
this . _updateOption ( key ) ;
}
} ,
@ -586,6 +578,8 @@
} ,
_pushPosition : function ( $elem , x , y ) {
x += this . offset . left ;
y += this . offset . top ;
var position = this . getPositionStyles ( x , y ) ;
this . styleQueue . push ( { $el : $elem , style : position } ) ;
if ( this . options . itemPositionDataEnabled ) {
@ -813,7 +807,7 @@
var i = this . masonry . cols ;
this . masonry . colYs = [ ] ;
while ( i -- ) {
this . masonry . colYs . push ( this . posTop ) ;
this . masonry . colYs . push ( 0 ) ;
}
} ,
@ -867,7 +861,7 @@
}
// position the brick
x = this . masonry . columnWidth * shortCol + this . posLeft ;
x = this . masonry . columnWidth * shortCol ;
y = minimumY ;
this . _pushPosition ( $brick , x , y ) ;
@ -879,7 +873,7 @@
} ,
_masonryGetContainerSize : function ( ) {
var containerHeight = Math . max . apply ( Math , this . masonry . colYs ) - this . posTop ;
var containerHeight = Math . max . apply ( Math , this . masonry . colYs ) ;
return { height : containerHeight } ;
} ,
@ -914,8 +908,8 @@
}
// position the atom
x = instance . fitRows . x + instance . posLeft ;
y = instance . fitRows . y + instance . posTop ;
x = instance . fitRows . x ;
y = instance . fitRows . y ;
instance . _pushPosition ( $this , x , y ) ;
instance . fitRows . height = Math . max ( instance . fitRows . y + atomH , instance . fitRows . height ) ;
@ -953,16 +947,16 @@
col = props . index % props . cols ,
row = ~ ~ ( props . index / props . cols ) ,
x = ( col + 0.5 ) * props . columnWidth -
$this . outerWidth ( true ) / 2 + instance . posLeft ,
$this . outerWidth ( true ) / 2 ,
y = ( row + 0.5 ) * props . rowHeight -
$this . outerHeight ( true ) / 2 + instance . posTop ;
$this . outerHeight ( true ) / 2 ;
instance . _pushPosition ( $this , x , y ) ;
props . index ++ ;
} ) ;
} ,
_cellsByRowGetContainerSize : function ( ) {
return { height : Math . ceil ( this . $filteredAtoms . length / this . cellsByRow . cols ) * this . cellsByRow . rowHeight + this . posT op } ;
return { height : Math . ceil ( this . $filteredAtoms . length / this . cellsByRow . cols ) * this . cellsByRow . rowHeight + this . offset . t op } ;
} ,
_cellsByRowResizeChanged : function ( ) {
@ -981,15 +975,14 @@
_straightDownLayout : function ( $elems ) {
var instance = this ;
$elems . each ( function ( i ) {
var $this = $ ( this ) ,
y = instance . straightDown . y + instance . posTop ;
instance . _pushPosition ( $this , instance . posLeft , y ) ;
var $this = $ ( this ) ;
instance . _pushPosition ( $this , 0 , instance . straightDown . y ) ;
instance . straightDown . y += $this . outerHeight ( true ) ;
} ) ;
} ,
_straightDownGetContainerSize : function ( ) {
return { height : this . straightDown . y + this . posTop } ;
return { height : this . straightDown . y } ;
} ,
_straightDownResizeChanged : function ( ) {
@ -1007,7 +1000,7 @@
var i = this . masonryHorizontal . rows ;
this . masonryHorizontal . rowXs = [ ] ;
while ( i -- ) {
this . masonryHorizontal . rowXs . push ( this . posLeft ) ;
this . masonryHorizontal . rowXs . push ( 0 ) ;
}
} ,
@ -1060,7 +1053,7 @@
// position the brick
x = minimumX ;
y = this . masonryHorizontal . rowHeight * smallRow + this . posTop ;
y = this . masonryHorizontal . rowHeight * smallRow ;
this . _pushPosition ( $brick , x , y ) ;
// apply setHeight to necessary columns
@ -1071,7 +1064,7 @@
} ,
_masonryHorizontalGetContainerSize : function ( ) {
var containerWidth = Math . max . apply ( Math , this . masonryHorizontal . rowXs ) - this . posLeft ;
var containerWidth = Math . max . apply ( Math , this . masonryHorizontal . rowXs ) ;
return { width : containerWidth } ;
} ,
@ -1106,8 +1099,8 @@
}
// position the atom
x = instance . fitColumns . x + instance . posLeft ;
y = instance . fitColumns . y + instance . posTop ;
x = instance . fitColumns . x ;
y = instance . fitColumns . y ;
instance . _pushPosition ( $this , x , y ) ;
instance . fitColumns . width = Math . max ( instance . fitColumns . x + atomW , instance . fitColumns . width ) ;
@ -1145,17 +1138,15 @@
var $this = $ ( this ) ,
col = ~ ~ ( props . index / props . rows ) ,
row = props . index % props . rows ,
x = ( col + 0.5 ) * props . columnWidth -
$this . outerWidth ( true ) / 2 + instance . posLeft ,
y = ( row + 0.5 ) * props . rowHeight -
$this . outerHeight ( true ) / 2 + instance . posTop ;
x = ( col + 0.5 ) * props . columnWidth - $this . outerWidth ( true ) / 2 ,
y = ( row + 0.5 ) * props . rowHeight - $this . outerHeight ( true ) / 2 ;
instance . _pushPosition ( $this , x , y ) ;
props . index ++ ;
} ) ;
} ,
_cellsByColumnGetContainerSize : function ( ) {
return { width : Math . ceil ( this . $filteredAtoms . length / this . cellsByColumn . rows ) * this . cellsByColumn . columnWidth + this . posLeft } ;
return { width : Math . ceil ( this . $filteredAtoms . length / this . cellsByColumn . rows ) * this . cellsByColumn . columnWidth } ;
} ,
_cellsByColumnResizeChanged : function ( ) {
@ -1173,15 +1164,14 @@
_straightAcrossLayout : function ( $elems ) {
var instance = this ;
$elems . each ( function ( i ) {
var $this = $ ( this ) ,
x = instance . straightAcross . x + instance . posLeft ;
instance . _pushPosition ( $this , x , instance . posTop ) ;
var $this = $ ( this ) ;
instance . _pushPosition ( $this , instance . straightAcross . x , 0 ) ;
instance . straightAcross . x += $this . outerWidth ( true ) ;
} ) ;
} ,
_straightAcrossGetContainerSize : function ( ) {
return { width : this . straightAcross . x + this . posLeft } ;
return { width : this . straightAcross . x } ;
} ,
_straightAcrossResizeChanged : function ( ) {