如何判断一个元素是否高于另一个元素(如计算完所有z索引后)与querySelectorAll的结果。如何判断一个元素是否高于另一个来自querySelectorAll的结果
0
A
回答
1
不要以为有一个简单的解决方案,因为在那里是一个浏览器API,你可以打电话并获得元素“z高度”。
您可以像渲染引擎工作的方式类似地处理此问题,其中基于DOM树深度的堆叠元素位于另一个之上。然后还有CSS引擎,它根据标签类型和CSS中的特殊规则(如z-index
,特殊位置属性(relative
,absolute
等),甚至CSS“怪癖”)更改元素位置,例如z-index
+ opacity
更改方式元素被堆叠。
根据您的目标,您可以简化解析并忽略CSS正在做什么,只考虑HTML。在那里你有DOM API,这使得遍历树结构变得非常容易,DOM渲染引擎将处理所有错误但仍然工作的标记。
-1
如果你可以使用jQuery,检查
$(element).css("z-index");
相关问题
- 1. 如何判断一个类是否来自另一个类
- 2. 如何判断元素是否位于DOM中的另一个元素之前
- 3. 判断一个元素是否在列表中的另一个元素之后
- 4. 如何判断一个元素是否是JavaScript中另一个元素的子元素(没有jQuery)?
- 5. 如何判断一个div标签/元素是否超过另一个?
- 6. 如何判断一个元素是否属于Prolog中的一个列表?
- 7. 如何判断一个元素是否是jquery-ui小部件?
- 8. 监听器来判断一个表是否有元素
- 9. 如何判断密码是否等于另一个密码?
- 10. 如何判断一个元素是否存在角度?
- 11. 如何判断元素是否是javascript/jquery中父元素的最后一个或第一个子元素?
- 12. 如何判断一个控件是否来自MasterPage
- 13. 如何判断一个元素是否属于Prolog中特定的b-Tree?
- 14. 判断一个字符串是否是另一个子字符
- 15. javascript如何判断一个数字是否是另一个数字的倍数
- 16. 如何判断一个TClass是否是从另一个TClass派生的?
- 17. 如何判断一个区域是否属于某个形状?
- 18. 如何判断一个JSON对象是否是一个数组?
- 19. 如何判断一个函数是否是一个类?
- 20. 如何检查查询的结果是否等于来自SQL中另一个查询的结果之一?
- 21. 如何判断DatagridView的第一个单元是否为空?
- 22. 算法来判断一个点是否在一个区域内
- 23. 如何判断阵列是否包含另一个阵列
- 24. Javascript:如何判断一个节点对象是否已经插入文档/另一个元素
- 25. 判断一个对象是否存在于一个集合中
- 26. 如何找到一个小于另一个元素的元素?
- 27. 如何判断多个getView结果中的哪一个可见?
- 28. 如何判断一个过程是否已经结束?
- 29. Android Studio元素高于另一个
- 30. 如何判断一个单元格是否为#NAME?
不要认为有一个简单的解决方案或一些浏览器API可以使用。您可能必须编写与渲染引擎相同的逻辑,因此请考虑z-index(以及随附的规则),然后再考虑html元素的顺序和结构。你甚至想要完成什么? –
您可以使用https://stackoverflow.com/questions/18780139/how-to-get-bounding-box-for-div-element-in-jquery进行操作,并检查是否有任何选定项目的边界盒相交。这不会给你的命令,但你可以消除那些甚至不是彼此靠近的命令。这是一些2D游戏的工作原理,因此搜索包围盒可能会得到一些与游戏相关的结果。 – jedifans
@MarkoGrešak你认为我可以逃脱只使用树的深度? – SuperUberDuper