Встречаются задачи, когда было бы удобно осуществлять перебор коллекции jQuery в обратном порядке. Ниже привожу функцию которая дает такую возможность:
jQuery.fn.reverseEach = (function () { var list = jQuery([1]); return function (c) { var el, i=this.length; try { while (i-->0 && (el=list[0]=this[i]) && c.call(list,i,el)!==false); } catch(e) { delete list[0]; throw e; } delete list[0]; return this; }; }()); $("li.classname").reverseEach(function(){ // this сразу содержит объект jQuery console.log( 'id:', this.attr('id') ); //return false; - Если в каком-то случае вернем false - обход прервется в этом месте });Если нужно поведение аналогичное .each(), когда к элементу обращаемся через $(this), нужно заменить 13 строчку на:
return this.get(0); // Вместо: return this;
Комментариев нет:
Отправить комментарий