图像加载后的图像onload事件

时间:2011-05-18 15:47:22

标签: javascript html events javascript-events

我有一个脚本将onload事件处理程序附加到页面上的所有图像,但是因为它是一个GreaseMonkey脚本,它只能在图像存在之后运行,所以它们中的一些可能已经加载了,有没有办法如果图像已经加载,则触发onload事件?

3 个答案:

答案 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的解决方法,但我并不是真的理解它!