我对正在制作的Chrome扩展程序有疑问。我尝试创建与此类似的扩展名,该扩展名将用cat图像替换网站上的所有图像:
https://blog.lateral.io/2016/04/create-chrome-extension-modify-websites-html-css/
我在Facebook上尝试过。
代码很简单:
var images = document.getElementsByTagName('img');
for (var i = 0, l = images.length; i < l; i++) {
images[i].src = 'http://placekitten.com/' + images[i].width + '/' + images[i].height;
}
我的问题是,它仅适用于首次出现在Facebook上的图像,并且滚动了一点后便停止替换图像。同样,当向上滚动时,最初替换的图像现在又恢复为原始。
有什么办法可以解决这个问题,即使在向下滚动后加载新图像时,扩展程序也可以在整个网站上正常工作?谢谢!
您需要确保在出现新图像时重新运行代码。最简单的解决方案是让setInterval()定期调用它。使用突变观察者可以完成更有效的解决方案。可能还有其他方法可以检测出现的新图像,例如检查窗口的高度或收听用户操作(例如滚动)。
谢谢!使用setInterval()解决了这个问题!