菜鸡互啄

in #cn6 years ago (edited)

之前说过我依葫芦画瓢写了几个小脚本,解除了桌面浏览器访问微信公众号文章时的延迟加载,但那个系列的脚本都遇到控制台报错的问题:

photo6296159359012546574.jpg

作为一个强迫症,显然不能忍,改呗。

先是直接加上 length 改成了 for(var i in document.images.length),不报错了,脚本也无效了。放狗搜了才明白,for (x in y) 是特定的循环语句,输出的不是数字是字符串。

明白了原理就好办了,既然用了 length 不报错,那就改成标准的 for 循环:for (i = 0; i < imgs.length; i++).

另外发现,data-src 这种属性不能直接用 . 来获取,传统的兼容性最好的写法是 getAttribute('data-src'),但既然是 userScript 当然用于现代浏览器,不可能不支持 HTML5 特性,可以用效率更高的 .dataset.src 来获取。

依葫芦画瓢之余还是要多学习……

Coin Marketplace

STEEM 0.26
TRX 0.11
JST 0.033
BTC 64111.27
ETH 3065.56
USDT 1.00
SBD 4.00