Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.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 选择所有div,但不选择嵌套在特定div中的div_Javascript_Jquery_Html - Fatal编程技术网

Javascript 选择所有div,但不选择嵌套在特定div中的div

Javascript 选择所有div,但不选择嵌套在特定div中的div,javascript,jquery,html,Javascript,Jquery,Html,我正在使用这个IE7Z索引修复程序,它会弄乱一些特定的元素 我试图做的是选择所有div,而不是嵌套在特定div中的那些div 这是我当前使用的jQuery代码,它没有按预期工作 <script type="text/javascript"> $(function() { var zIndexNumber = 1000; $('div').not('.filter_list_1_container > div').each(function

我正在使用这个IE7Z索引修复程序,它会弄乱一些特定的元素

我试图做的是选择所有div,而不是嵌套在特定div中的那些div

这是我当前使用的jQuery代码,它没有按预期工作

<script type="text/javascript">
    $(function() {
        var zIndexNumber = 1000;
        $('div').not('.filter_list_1_container > div').each(function() {
            $(this).css('zIndex', zIndexNumber);
            zIndexNumber -= 10;
        });
    });
</script>

$(函数(){
变量zIndexNumber=1000;
$('div')。不是('.filter\u list\u 1\u container>div')。每个(函数(){
$(this.css('zIndex',zIndexNumber);
zIndexNumber-=10;
});
});
出于某种原因,它只会忽略第一层。如果嵌套的div包含一个div,jQuery代码也不会忽略它们


如何忽略“.filter\u list\u 1\u container”类中的所有div?

您可能需要后代而不是直接子代,因此从选择器中删除

改变

到 .not('.filter\u list\u 1\u container div')

你的代码是

$(function() {
    var zIndexNumber = 1000;
    $('div').not('.filter_list_1_container div').each(function() {
        $(this).css('zIndex', zIndexNumber);
        zIndexNumber -= 10;
    });
});

您正在选择器中使用
,这意味着它将只选择该元素的直接子元素。如果删除它,它将忽略
元素
div
过滤器列表\u 1\u容器
的所有子代

这可以做到:

<script type="text/javascript">
    $(function() {
        var zIndexNumber = 1000;
        $('div').not('.filter_list_1_container div').each(function() {
            $(this).css('zIndex', zIndexNumber);
            zIndexNumber -= 10;
        });
    });
</script>

$(函数(){
变量zIndexNumber=1000;
$('div')。不是('.filter\u list\u 1\u container div')。每个(函数(){
$(this.css('zIndex',zIndexNumber);
zIndexNumber-=10;
});
});

您的问题是“>”操作符正在选择所有直接子项。所以在下面的例子中

.filter\u list\u 1\u容器 | div | div

它将只排除第一组div并显示第二组div


尝试删除'>'运算符

,这是因为您特别忽略了.filter\u list\u 1\u containe的直接子div,这听起来可能很愚蠢,但您能否删除'>'符号并尝试使用
。filter\u list\u 1\u container div
完美!工作如期!
<script type="text/javascript">
    $(function() {
        var zIndexNumber = 1000;
        $('div').not('.filter_list_1_container div').each(function() {
            $(this).css('zIndex', zIndexNumber);
            zIndexNumber -= 10;
        });
    });
</script>