就我而言,我this在 each() 中,我需要从一开始就使用它,我知道它很模糊,但您会通过示例理解
jQuery(document).ready(function () {
jQuery('.ids-attributes-wrapper').each(function(){
var size_li = jQuery(this).find('dd.ids-attr-content li.ids-sub-filters').length;
x=3;
jQuery(this).find('dd.ids-attr-content li.ids-sub-filters:gt('+x+')').hide().end().append(jQuery('<li class="ids-sub-filters more">...</li>'));
jQuery(this).find('dd.ids-attr-content li:lt('+x+')').show();
jQuery(this).find('#show-more').click(function () {
x= (x+50 <= size_li) ? x+50 : size_li;
jQuery(this).find('dd.ids-attr-content li:lt('+x+')').show();
//!!! HERE the above this 'jQuery(this)' doesn't refer to the .ids-attributes-wrapper each selector
jQuery(this).find('dd.ids-attr-content li.ids-sub-filters.more').remove();
});
jQuery(this).find('#show-less').click(function () {
if (!jQuery(this).find('dd.ids-attr-content li.ids-sub-filters').hasClass('more')) {
x = 5;
jQuery(this).find('dd.ids-attr-content li').not(':lt('+x+')').hide();
jQuery(this).find('dd.ids-attr-content li.ids-sub-filters:gt('+x+')').hide().end().append(jQuery('<li class="ids-sub-filters more">...</li>'));
}
});
});
});
相关分类