今天在处理浏览器的预读下一页功能的是否遇到一个Bug,问题简单描述如下
一个连接在页面中不可见,不可见的属性是在其父元素或者更上层的元素中定义的。
我们最终要得到的是页面中所有可见的链接的节点。
可以这样实现:
1.首先得到页面中所有的节点
document.getElementsByTagName('a')
2.排除不可见节点
对于不可见节点获取方式有以下几种
a.获取该元素的display属性
b.如果该元素的display属性没有定义,获取父元素的相应属性
c.获取该元素的宽度属性,因为如果该元素宽度为0,很显然是不可见的
综上:c的思路是最有成效的
于是,去掉anchor.offsetWidth == 0的所有A元素就可以了