I'm trying to add a bit of jQuery code to all elements that have position:fixed set on them. Is this sort of thing possible? It would be very helpful if there is, so I don't have to go through all my code and an extra class to the objects that are fixed.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
This one should cover all cases:
$('*').filter(function() {
return $(this).css("position") === 'fixed';
});
Not as fast as qwertymk's answer, but also work if the css property is inherited from another rule, as demonstrated here.
回答2:
Faster and safer than Colin's answer:
$('*').filter(function(){ return this.style && this.style.position === 'fixed'; });
More about jQuery filter()
回答3:
If you are only checking for display: none
and other display
properties. You could use the CSS selector :visible
in your usual jQuery selections, like this:
$('.items:visible')
Or to select the hidden elements:
$('.items:hidden')