在HTML页面中获取"position:fixed"的所有元素?

son*_*gyy 8 html javascript css jquery dom

这样做的原因:我正在调试我的网页的CSS ...一些元素出现了,它们不应该出现.我怀疑它是元素定位的问题..因此我想找到这些定位元素并逐一检查.

gec*_*kob 15

这个是使用jQuery.我希望你能找到它.

 var find = $('*').filter(function () { 
        return $(this).css('position') == 'fixed';
    });
Run Code Online (Sandbox Code Playgroud)

我认为这个使用纯javascript工作:

var elems = document.body.getElementsByTagName("*");
var len = elems.length

for (var i=0;i<len;i++) {

    if (window.getComputedStyle(elems[i],null).getPropertyValue('position') == 'fixed') {
        console.log(elems[i])
    }

}
Run Code Online (Sandbox Code Playgroud)


Sha*_*dow 8

这是一个 ES6 版本,它为您提供了这些元素的数组以供进一步处理:

let fixedElements = [...document.body.getElementsByTagName("*")].filter(
    x => getComputedStyle(x, null).getPropertyValue("position") === "fixed"
);
Run Code Online (Sandbox Code Playgroud)