要使用XPath仅选择可见元素,可以使用以下方法:
p:not([style*="display:none"])
这将选择所有不具有display:none
样式属性的段落元素。
//*[not(@style) or not(contains(@style, 'display:none'))]
这将选择所有没有style
属性或者style
属性中不包含display:none
的元素。
const visibleElements = Array.from(document.querySelectorAll('*')).filter(el => getComputedStyle(el).display !== 'none' && getComputedStyle(el).visibility !== 'hidden');
这将选择所有不具有display:none
和visibility:hidden
样式属性的元素。
请注意,这些方法可能不会100%准确地选择可见元素,因为某些元素可能被隐藏或隐藏在其他元素后面。但是,这些方法可以帮助你选择大多数可见元素。
领取专属 10元无门槛券
手把手带您无忧上云