gpt4 book ai didi

javascript - 查找页面中位置为 "absolute"的所有元素

转载 作者:行者123 更新时间:2023-11-30 12:33:51 25 4
gpt4 key购买 nike

我需要获取页面中位置为“绝对”的所有元素。我无法使用 $('*') 因为迭代页面中的每个元素都会导致性能问题。我的页面中有近 8000 个元素,每次打开上下文菜单时,我都需要计算最大 z 索引。我已经搜索过,但找不到有效的解决方案。我正在寻找下面提供的解决方案,

$(function () {
$("*[style*='position:absolute']").each (function () {
alert($(this).html());
});
});

http://jsfiddle.net/MGv9X/

但是,它仅在样式为内联时才有效。但是当也从 CSS 指定位置时,我需要所有具有“绝对”位置的元素。

请指教。提前致谢。

最佳答案

您不能仅通过 CSS 属性 >> 简单地选择一个元素 >> 而无需遍历所有计算出的 DOM 元素样式,因为它们不是选择器

是的,* 恐怕是全局的。而且很慢。但是为了让它更快,首先收集你的元素,然后对你的元素集合应用一个方法:

jsFiddle demo

var absElements = [];                            // Elements collector
$("*").css("position", function(i, pos) {
if(pos==="absolute") absElements.push(this); // Collect elements
});

// Now once the above is done...

$(absElements) // Do whatever you want with them

关于javascript - 查找页面中位置为 "absolute"的所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26751317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com