如何判断一个特定的DOM元素是否可见?
使用 jQuery,确定特定元素是否可见的最简单方法是什么?我的意思不是在当前视口内可见,而是在页面上可见。
理想情况下,如果元素或其任何祖先具有 CSS 规则(例如 display: none
或 visibility: hide
),则该函数应返回 false
。无需担心overflow:hidden
。
Using jQuery, what is the easiest way to determine whether a particular element is visible? I don’t mean visible within the current viewport, but on the page.
Ideally, the function should return false
if the element or any of its ancestors has a CSS rule such as display: none
or visibility: hidden
. No need to worry about overflow: hidden
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
将
:visible
选择器与is
方法结合使用。Use
:visible
selector withis
method.您可以使用
is()
方法。You can use
is()
method.$('div:visible');
将返回所有可见的div
。另外,值得注意的是 jQuery 1.3.2 变更日志:
$('div:visible');
will return all visibledivs
.Also, it's worth noting this section of the jQuery 1.3.2 changelog:
http://api.jquery.com/visible-selector/
http://api.jquery.com/visible-selector/