diff --git a/README b/README new file mode 100644 index 0000000..e69de29 diff --git a/index.html b/index.html new file mode 100644 index 0000000..b9c2a5b --- /dev/null +++ b/index.html @@ -0,0 +1,149 @@ + + + + + + + + + + Limit List Size tests + + + + + + + + + + + +
+

headings are ok

+ +

Blandit facit in placerat adipiscing zzril. Claritatem iusto ex claritatem consectetuer facer. Vel wisi doming vero ii laoreet. Duis ut iriure eleifend dignissim et.

+ +

Mazim in volutpat consuetudium delenit adipiscing. Iis cum dolor quam nobis luptatum. Littera luptatum qui veniam esse imperdiet. Iriure qui lectores iriure seacula nobis.

+ +

In fact all elements are ok. All children are treated equally!

And nested children are ignored too.
+ +

+ Praesent litterarum accumsan nulla molestie facit. Et veniam ut est id me. Et elit anteposuerit dolore qui vel. Hendrerit imperdiet feugiat per soluta saepius. +

+ +

+ Option saepius notare Investigationes eodem tempor. Eodem nisl at facilisi claritas laoreet. Qui parum elit doming consequat quod. Sit nostrud molestie eum mutationem feugiat. +

+ +

+ Dolore in typi dolor dignissim vel. Dolore non processus quis ex nibh. Praesent aliquip quod iriure autem me. Veniam molestie in lius nobis elit. +

+ +

+ Dolore eum seacula legunt eum delenit. Possim parum parum facilisis tation sequitur. Eorum aliquip euismod claritas formas magna. Velit mutationem volutpat cum iis exerci. +

+ +

+ Littera et quam putamus qui facer. Euismod nunc luptatum placerat quis blandit. Magna nonummy lectorum imperdiet eodem ex. Consuetudium sit at suscipit ii in. +

+ +

+ Qui mazim iis claritatem duis legunt. Et ii in possim gothica lectorum. Cum autem qui dolore euismod qui. Qui nunc modo feugait aliquam quam. +

+ +

+ Eros ex parum doming legunt eu. Seacula nihil luptatum odio vero dolor. Delenit nunc nonummy ad nulla videntur. Legere imperdiet habent etiam nobis consectetuer. +

+ +

+ Volutpat quam diam legentis eorum elit. Nibh nunc est commodo dolore nobis. At congue claram videntur ut assum. Anteposuerit imperdiet sequitur eorum ipsum nostrud. +

+ +

+ Per notare modo ullamcorper soluta in. Soluta tempor exerci claritas tincidunt et. Fiant mazim parum ea dolor zzril. Aliquip elit lectorum mirum putamus quam. +

+ +

+ Parum litterarum minim lorem putamus esse. Videntur laoreet quod dolor dolore consequat. Magna est suscipit luptatum nihil tation. Modo tincidunt quam suscipit nisl usus. +

+ +

+ Non ad diam congue quod gothica. Diam sed saepius quam wisi decima. +

+
+ + + + diff --git a/jquery.toggleChildren.js b/jquery.toggleChildren.js new file mode 100644 index 0000000..8adcfce --- /dev/null +++ b/jquery.toggleChildren.js @@ -0,0 +1,66 @@ +/** + * jQuery preventChildren plugin + * @version 0.2 + * @date April 28, 2010 + * @author Eli Dupuis + * @copyright (c) 2009 Lift Interactive (http://liftinteractive.com) + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + * Requires: jQuery v1.3.2 or later (most likely works fine with earlier versions, but unteseted) + +*/ + +(function($) { + +var ver = '0.2'; + +jQuery.fn.preventChildren = function(options) { + + // iterate and reformat each matched element + return this.each(function() { + var $this = $(this); + var opts = $.extend({}, $.fn.preventChildren.defaults, options); + + opts.items--; // account for 0th item so opts.item is visually accurate. + + var childOverage = $this.children(':gt('+opts.items+')'); + + // if we have more than limit, hide extras and attach toggle functionality: + if($this.children().length > opts.items){ + childOverage.hide(); + + // add view more link + var viewmore = $(''+opts.viewMore+'').addClass('more'); + viewmore.click(function(){ + var hidden = $this.children(':hidden'); + if(hidden.length > 0){ + $this.children(':hidden').show(); + $(this).html(opts.viewLess); + }else{ + $this.children(':gt('+opts.items+')').filter(':not(:last)').hide(); + $(this).html(opts.viewMore); + } + return false; + }).appendTo($this); + if (opts.moreWrapper) { + viewmore.wrap(opts.moreWrapper); + }; + }; + + }); +}; + +// defaults +$.fn.preventChildren.defaults = { + items:5, // default number of list items to show + viewMore:'View More Items', // text that is displayed in toggle link + viewLess:'View Less Items', // text that is displayed in toggle link + moreWrapper:false +}; + +// public function/method +$.fn.preventChildren.ver = function() { return "jquery.preventChildren ver. " + ver; }; + +// end of closure +})(jQuery); \ No newline at end of file