Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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 jQuery$(此)选择器不工作_Javascript_Jquery - Fatal编程技术网

Javascript jQuery$(此)选择器不工作

Javascript jQuery$(此)选择器不工作,javascript,jquery,Javascript,Jquery,我正在尝试制作一个jquerycarousel插件,通过向它添加一些附加功能,使它更具动态性 $("ul#carousel").roundabout(); $("ul#carousel li").click(function() { var id = $(this).attr("id"); var id_num = id.substr(-1); for( var i=0;i<4;i++) { if(i != id_num)

我正在尝试制作一个jquerycarousel插件,通过向它添加一些附加功能,使它更具动态性

$("ul#carousel").roundabout();

$("ul#carousel li").click(function() { 
    var id = $(this).attr("id");
    var id_num = id.substr(-1);

    for( var i=0;i<4;i++)
    {
        if(i != id_num)
        {                   
              $("li#list_"+ i +" .table_box").attr("class", "table_box");
        }
    }

    $(this +" .table_box").attr("class", "sub_table_box");
});
在我的jquery-1.7.min.js文件中


我认为这可能与插件脚本与另一个js文件冲突有关。但是,除非我尝试错误,否则jquery noconflict无法解决任何问题。

这根本不是jquery和DOM API的工作方式
是一个HTML元素,因此不能仅通过字符串连接它来查询其子元素。改变

$(this +" .table_box")


for循环内部的元素呢?我试着使用$(this).find(“li#list_uu”+I+”.table_box”).attr(“class”,“table_box”);但那没用

那是因为
这个
已经是
  • 。可以使用以下内容替换整个循环:

    $(this).siblings().find('.sub_table_box').removeClass('sub_table_box').addClass('table_box');
    
    总结一下(并添加一些其他样式改进):


    for循环内部的元素呢?我试着使用$(this).find(“li#list_uu”+I+”.table_box”).attr(“class”,“table_box”);“但那没用!”兰斯,那该怎么办?它说“在这个元素中找到具有特定id的元素中的类“table_box”的元素,并将它们的类设置为“table_box”,这有点毫无意义。这是常识性的jQuery。在10分钟内完成6次投票?RTFM people lol.@AlienWebguy对此没有异议。“减慢了速度”?什么,比如开发?
    $(this +" .table_box")
    
    $(this).find(".table_box")
    
    $(this).siblings().find('.sub_table_box').removeClass('sub_table_box').addClass('table_box');
    
    $("ul#carousel").on('click', 'li', function() {
        $(this)
            .addClass('sub_table_box');
            .siblings()
            .find('.sub_table_box')
            .removeClass('sub_table_box')
            .addClass('table_box');
    });