Javascript 如果要使用多个,请使用第一个
在我的例子中,我在each()中有Javascript 如果要使用多个,请使用第一个,javascript,jquery,Javascript,Jquery,在我的例子中,我在each()中有this,我需要从一开始就使用它,我知道它是模糊的,但是你会理解这个例子 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;
this
,我需要从一开始就使用它,我知道它是模糊的,但是你会理解这个例子
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>'));
}
});
});
});
jQuery(文档).ready(函数(){
jQuery('.ids attributes wrapper')。每个(函数(){
var size_li=jQuery(this).find('dd.ids-attr-content li.ids子过滤器').length;
x=3;
jQuery(this).find('dd.ids-attr-content li.ids子过滤器:gt('+x+')).hide().end().append(jQuery('… );
jQuery(this.find('dd.ids-attr-content li:lt('+x+')).show();
jQuery(this)。查找(“#显示更多”)。单击(函数(){
x=(x+50这个
JavaScript中的上下文问题非常常见。我相信您正在寻找以下内容:
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();
var self=this
jQuery(this).find('#show-more').click(function () {
x= (x+50 <= size_li) ? x+50 : size_li;
jQuery(self).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>'));
}
});
});
});
jQuery(文档).ready(函数(){
jQuery('.ids attributes wrapper')。每个(函数(){
var size_li=jQuery(this).find('dd.ids-attr-content li.ids子过滤器').length;
x=3;
jQuery(this).find('dd.ids-attr-content li.ids子过滤器:gt('+x+')).hide().end().append(jQuery('… );
jQuery(this.find('dd.ids-attr-content li:lt('+x+')).show();
var self=这个
jQuery(this)。查找(“#显示更多”)。单击(函数(){
x=(x+50如果我理解正确,请将其分配给局部变量,并在使用该变量的位置使用该局部变量。可能重复@Atul是的,这是一个解决方案,谢谢