Javascript JS:querySelectorAll关于z索引

Javascript JS:querySelectorAll关于z索引,javascript,css,z-index,Javascript,Css,Z Index,我想选择所有“div”元素,它们是“body”的子元素,并且具有z-index:2属性集 document.queryselectoral('body>div') 如何在这个querySelector上进行z-index检查?我认为不能将“z-index”包含在选择器中,因为没有CSS选择器语法用于根据CSS样式属性选择元素 您可以做的是通过给元素指定一个特定的类来实现“z-index:2”样式。然后,您可以在选择器中使用该类(“body>div.zIndex2”或其他任何内容)。我可能会将jQ

我想选择所有“div”元素,它们是“body”的子元素,并且具有z-index:2属性集

document.queryselectoral('body>div')


如何在这个querySelector上进行z-index检查?

我认为不能将“z-index”包含在选择器中,因为没有CSS选择器语法用于根据CSS样式属性选择元素


您可以做的是通过给元素指定一个特定的类来实现“z-index:2”样式。然后,您可以在选择器中使用该类(“body>div.zIndex2”或其他任何内容)。

我可能会将jQuery用于这样的选择和自定义选择器,如:

$.expr[':'].zIndex = function(obj) {
   if ($(obj).css('z-index')==2) return true;
   else return false;
}
然后致电:

$('body div:zIndex')

但是你需要jQuery来实现这个功能,而我还没有测试过它

为什么不遍历
div
元素来检查它们的zIndex属性呢?这就是我目前所做的,我只是想知道最好的解决方案。谢谢你的回答,我只是不想添加新代码,因为我已经区分了哪些“div”我希望使用z-index:2(在我的代码中,它也用于某些动画)。如果z-index直接位于“style”属性上,那么您可能可以组成一个选择器来检查“style”属性本身-这可能会很混乱,对我来说似乎很脆弱。这是类似于“body>div”的吗[style=…等?是的-但是这可能非常接近浏览器能够做的边缘。我不知道是否有对jQuery样式限制模式匹配的良好支持,或者这是否是CSS3规范的一部分。也许是。祝你好运!谢谢,但我从一开始就有意避免jQuery。我知道是哪种情况我怀疑您已经在做的第一条评论是最好的答案,因为我怀疑这就是jQuery对选择器所做的一切。