我有一个脚本将onload事件处理程序附加到页面上的所有图像,但是因为它是一个GreaseMonkey脚本,它只能在图像存在之后运行,所以它们中的一些可能已经加载了,有没有办法如果图像已经加载,则触发onload事件?
答案 0 :(得分:1)
如果你不喜欢使用像jQuery这样的框架,那么有一个triggerHandler()函数应该可以满足你的需要。
您需要进行测试以检查图片是否已加载到您的脚本中(应该能够找到有关如何使用Google执行此操作的详细信息) - 如果尚未加载,只需附加onload事件处理程序如果它已被加载,你可以附加onload事件处理程序,然后使用jQuery的triggerHandler()函数触发它,或执行本机执行的代码/函数 - 这最简单的取决于你的onload事件处理程序。
答案 1 :(得分:0)
这是一个onload事件。我不会想到这个事件会不止一次发生。
您可以将脚本附加到body / document onload事件并循环遍历所有图像,然后附加事件处理程序。
答案 2 :(得分:0)
我只是遇到了同样的问题,谷歌把我带到了那里。
我不想使用jQuery,所以我搜索了另一个解决方案。最后,在我的情况下,我只是改变了图像" src"在设置" src"中的正确图像之前,将属性归属于任何虚拟图片(例如1pix.png),以强制重新加载每个图像。当然,如果您有大图像和/或经常加载图像,这不是一个好主意......但在我的情况下,我认为(此外,我认为底层浏览器缓存机制避免了真实图像重新加载......)。
希望它可以帮助别人!
PS:它似乎接近@Bugster的解决方法,但我并不是真的理解它!