Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果要使用多个,请使用第一个_Javascript_Jquery - Fatal编程技术网

Javascript 如果要使用多个,请使用第一个

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;

在我的例子中,我在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;
            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是的,这是一个解决方案,谢谢