Firefox,查询选择器和可见的伪选择器

问题描述 投票:10回答:6

无论如何,是否可以在Firefox的querySelector()或querySelectorAll()函数中使用伪选择器来检测可见性?我特别希望能够执行以下操作:

elem.querySelector('#list .list-item:visible');
elem.querySelector('#section .sub-section:visible .title');

无需担心浏览器不一致或其他实现,仅需担心Firefox。谢谢!

EDIT:可见性由display不为nonevisibility不为hidden定义。

无论如何,是否可以在Firefox的querySelector()或querySelectorAll()函数中使用伪选择器来检测可见性?我特别希望能够执行以下操作:elem ....

javascript firefox selectors-api
6个回答
10
投票

不,没有。 The CSS specification未定义:visible(或相关的)选择器,并且AFAIK Firefox不实现非标准的伪选择器。


18
投票

由于:visible伪选择器没有本地含义,所以我决定使用CSS类来隐藏和显示我的元素,因此允许仅检查类名而不是可见性。这是我的选择器现在的样子:


6
投票

使用普通的javascript,您还可以轻松地模拟jQuery的行为,将querySelector结果转换为数组,然后对其进行过滤:


6
投票

为了查找不是display:none的元素,与:visible等效的CSS选择器为


1
投票

检查元素是否可见,在所有主流浏览器上都支持:


0
投票

您可以使用offsetParent值确定元素是否可见。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.