Browse Source

src & docs : add remove method

pull/14/head
David DeSandro 14 years ago
parent
commit
207e8e77c9
  1. 10
      _posts/docs/2010-12-04-methods.mdown
  2. 10
      jquery.isotope.js
  3. 6
      jquery.isotope.min.js

10
_posts/docs/2010-12-04-methods.mdown

@ -12,6 +12,7 @@ toc:
- { title: layout, anchor: layout }
- { title: option, anchor: option }
- { title: reLayout, anchor: relayout }
- { title: remove, anchor: remove }
---
@ -103,3 +104,12 @@ Resets layout properties and lays-out every item element.
[**See Demo: reLayout**](../demos/relayout.html)
## remove
{% highlight javascript %}
.isotope( 'remove', $content )
{% endhighlight %}
Removes specified elements from Isotope widget and the DOM.

10
jquery.isotope.js

@ -674,6 +674,16 @@ window.Modernizr = window.Modernizr || (function(window,doc,undefined){
});
},
// removes elements from Isotope widget
remove : function( $content ) {
this.$allAtoms = this.$allAtoms.not( $content );
this.$filteredAtoms = this.$filteredAtoms.not( $content );
$content.remove();
},
_shuffleArray : function ( array ) {
var tmp, current, i = array.length;

6
jquery.isotope.min.js vendored

@ -22,9 +22,9 @@ this.isNew.sortAscending)this._sort();this.reLayout(a)},option:function(a,b){if(
c.elemCount++})},_filter:function(a){var b=this.options.filter===""?"*":this.options.filter;if(b){var c=this.options.hiddenClass,d="."+c,f=a.not(d),g=a.filter(d);d=g;a=a.filter(b);if(b!=="*"){d=g.filter(b);b=f.not(b).toggleClass(c);b.addClass(c);this.styleQueue.push({$el:b,style:this.options.hiddenStyle})}this.styleQueue.push({$el:d,style:this.options.visibleStyle});d.removeClass(c)}return a},_sort:function(){var a=this,b=function(d){return e(d).data("isotope-sort-data")[a.options.sortBy]},c=this.options.sortAscending?
1:-1;sortFn=function(d,f){var g=b(d),h=b(f);return(g>h?1:g<h?-1:0)*c};this.$filteredAtoms.sort(sortFn);return this},_translate:function(a,b){return{translate:[a,b]}},_positionAbs:function(a,b){return{left:a,top:b}},_pushPosition:function(a,b,c){b=this.positionFn(b,c);this.styleQueue.push({$el:a,style:b})},layout:function(a,b){var c=this.options.layoutMode;this["_"+c+"Layout"](a);this.styleQueue.push({$el:this.element,style:this["_"+c+"GetContainerSize"]()});var d=this.applyStyleFnName==="animate"&&
!this.isLaidOut?"css":this.applyStyleFnName,f=this.options.animationOptions;e.each(this.styleQueue,function(g,h){h.$el[d](h.style,e.extend({},f))});this.styleQueue=[];b&&b.call(a);this.isLaidOut=true;return this},resize:function(){return this["_"+this.options.layoutMode+"Resize"]()},reLayout:function(a){return this["_"+this.options.layoutMode+"Reset"]().layout(this.$filteredAtoms,a)},addItems:function(a,b){var c=this._filterFind(a,this.options.itemSelector);this._setupAtoms(c);this.$allAtoms=this.$allAtoms.add(c);
b&&b(c)},insert:function(a,b){this.element.append(a);var c=this;this.addItems(a,function(d){$filteredAtoms=c._filter(d);c.$filteredAtoms=c.$filteredAtoms.add($filteredAtoms)});this._sort().reLayout(b)},appended:function(a,b){var c=this;this.addItems(a,function(d){c.$filteredAtoms=c.$filteredAtoms.add(d);c.layout(d,b)})},_shuffleArray:function(a){var b,c,d=a.length;if(d)for(;--d;){c=~~(Math.random()*(d+1));b=a[c];a[c]=a[d];a[d]=b}return a},logNames:function(a){var b="";a.each(function(){b+=e(this).find(".name").text()+
", "});window.console&&console.log(b)},shuffle:function(a){this.options.sortBy="shuffle";this.logNames(this.$allAtoms);this.$allAtoms=this._shuffleArray(this.$allAtoms);this.logNames(this.$allAtoms);this.$filteredAtoms=this._filter(this.$allAtoms);return this.reLayout(a)},destroy:function(){var a=e.extend(this.options.visibleStyle,{position:"relative",top:"auto",left:"auto"});if(this.usingTransforms)a[e.isoTransform.transformProp]="none";this.$allAtoms.css(a).removeClass(this.options.hiddenClass);
this.element.css({width:"auto",height:"auto"}).unbind(".isotope").removeClass(this.options.containerClass).removeData("isotope");e(window).unbind(".isotope")},_getSegments:function(a,b){var c=b?"rowHeight":"columnWidth",d=b?"height":"width",f=b?"rows":"cols";this[a][c]=this.options[a]&&this.options[a][c]||this.$allAtoms["outer"+(b?"Height":"Width")](true);if(!this[a][c]){e.error(c+" calculated to be zero. Stopping Isotope plugin before divide by zero. Check that the width of first child inside the isotope container is not zero.");
b&&b(c)},insert:function(a,b){this.element.append(a);var c=this;this.addItems(a,function(d){$filteredAtoms=c._filter(d);c.$filteredAtoms=c.$filteredAtoms.add($filteredAtoms)});this._sort().reLayout(b)},appended:function(a,b){var c=this;this.addItems(a,function(d){c.$filteredAtoms=c.$filteredAtoms.add(d);c.layout(d,b)})},remove:function(a){this.$allAtoms=this.$allAtoms.not(a);this.$filteredAtoms=this.$filteredAtoms.not(a);a.remove()},_shuffleArray:function(a){var b,c,d=a.length;if(d)for(;--d;){c=~~(Math.random()*
(d+1));b=a[c];a[c]=a[d];a[d]=b}return a},logNames:function(a){var b="";a.each(function(){b+=e(this).find(".name").text()+", "});window.console&&console.log(b)},shuffle:function(a){this.options.sortBy="shuffle";this.logNames(this.$allAtoms);this.$allAtoms=this._shuffleArray(this.$allAtoms);this.logNames(this.$allAtoms);this.$filteredAtoms=this._filter(this.$allAtoms);return this.reLayout(a)},destroy:function(){var a=e.extend(this.options.visibleStyle,{position:"relative",top:"auto",left:"auto"});if(this.usingTransforms)a[e.isoTransform.transformProp]=
"none";this.$allAtoms.css(a).removeClass(this.options.hiddenClass);this.element.css({width:"auto",height:"auto"}).unbind(".isotope").removeClass(this.options.containerClass).removeData("isotope");e(window).unbind(".isotope")},_getSegments:function(a,b){var c=b?"rowHeight":"columnWidth",d=b?"height":"width",f=b?"rows":"cols";this[a][c]=this.options[a]&&this.options[a][c]||this.$allAtoms["outer"+(b?"Height":"Width")](true);if(!this[a][c]){e.error(c+" calculated to be zero. Stopping Isotope plugin before divide by zero. Check that the width of first child inside the isotope container is not zero.");
return this}this[d]=this.element[d]();this[a][f]=Math.floor(this[d]/this[a][c]);this[a][f]=Math.max(this[a][f],1);return this},_masonryPlaceBrick:function(a,b,c){b=Math.min.apply(Math,c);for(var d=b+a.outerHeight(true),f=c.length,g=f,h=this.masonry.cols+1-f;f--;)if(c[f]===b)g=f;this._pushPosition(a,this.masonry.columnWidth*g+this.posLeft,b);for(f=0;f<h;f++)this.masonry.colYs[g+f]=d},_masonryLayout:function(a){var b=this;a.each(function(){var c=e(this),d=Math.ceil(c.outerWidth(true)/b.masonry.columnWidth);
d=Math.min(d,b.masonry.cols);if(d===1)b._masonryPlaceBrick(c,b.masonry.cols,b.masonry.colYs);else{var f=b.masonry.cols+1-d,g=[],h,i;for(i=0;i<f;i++){h=b.masonry.colYs.slice(i,i+d);g[i]=Math.max.apply(Math,h)}b._masonryPlaceBrick(c,f,g)}})},_masonryReset:function(){this.masonry={};this._getSegments("masonry");var a=this.masonry.cols;for(this.masonry.colYs=[];a--;)this.masonry.colYs.push(this.posTop);return this},_masonryResize:function(){var a=this.masonry.cols;this._getSegments("masonry");this.masonry.cols!==
a&&this.reLayout();return this},_masonryGetContainerSize:function(){return{height:Math.max.apply(Math,this.masonry.colYs)-this.posTop}},_fitRowsLayout:function(a){this.width=this.element.width();var b=this;return a.each(function(){var c=e(this),d=c.outerWidth(true),f=c.outerHeight(true);if(b.fitRows.x!==0&&d+b.fitRows.x>b.width){b.fitRows.x=0;b.fitRows.y=b.fitRows.height}b._pushPosition(c,b.fitRows.x+b.posLeft,b.fitRows.y+b.posTop);b.fitRows.height=Math.max(b.fitRows.y+f,b.fitRows.height);b.fitRows.x+=

Loading…
Cancel
Save