在纯 JavaScript 中确定元素可见性
在没有 jQuery 的情况下,开发人员经常寻求方法来确定元素在 DOM 中是否可见。本文解决了这个问题,探讨了可以指示可见性或隐藏状态的各种属性。
虽然检查显示属性仍然是一个重要因素,但它并不是唯一的考虑因素。 visibility 属性也会影响可见性,指示元素当前是否隐藏。
但是,其他属性可能还需要注意。根据 MDN 文档,当元素或其父元素通过显示样式隐藏时,元素的 offsetParent 属性将返回 null。要确定不包括固定元素的可见性,可以使用以下脚本:
function isHidden(el) { return (el.offsetParent === null); }
但是,固定元素可能需要不同的方法,依赖于 window.getCompulatedStyle()。以下函数考虑了这些元素:
function isHidden(el) { var style = window.getComputedStyle(el); return (style.display === 'none'); }
虽然第二个选项更全面,但计算速度可能较慢。因此,最佳选择取决于操作的频率。
以上是如何确定纯 JavaScript 中元素的可见性?的详细内容。更多信息请关注PHP中文网其他相关文章!