var imgLoader = $("<img />");
$(imgLoader).attr("src", "http://localhost/malevil/Content/Images/img_adrenalin.jpg");
$(imgLoader).unbind('load');
$(imgLoader).bind('load', function () {
alert("event fired");
});
但这项工作仅限于Chrome,问题出在哪里? 在IE中,Firefox和Opera加载事件从未被解雇。
答案 0 :(得分:12)
您需要在设置src
属性之前绑定load事件。
作为旁注,您需要注意的图像上的加载事件存在已知问题:
- 它不能始终如一地工作 可靠的跨浏览器
- 没有 如果图像在WebKit中正确触发 src设置为与之前相同的src
- 它没有正确地冒泡 DOM树
- 可以停止拍摄图像 已经存在于浏览器中的 高速缓存
答案 1 :(得分:3)
我会在之前设置处理程序设置src
属性 - 因为它可能是在设置事件处理程序之前加载图像。