tyb*_*103 15 html javascript jquery onload
我想在加载图像时运行一些代码.另外,我想不引人注目地进行(不是内联).更具体地说,我想使用jQuery的live()功能,因此任何动态加载的图像都会发生这种情况.
我试过了:
<img class="content_image" alt="" src="..." />
<script>
$('.content_image').live('load', function() {
alert('loaded!');
});
</script>
Run Code Online (Sandbox Code Playgroud)
除此之外load,我已经尝试过onload,而且onLoad.当我用'click'替换时,所有工作都按预期工作,所以我知道这不是一些干扰bug.
我无法找到该live()功能的可用事件类型列表,所以我知道,这可能是不可能的.
T.J*_*der 18
(它会load,不是onload或onLoad.)
load不起泡(根据imgHTML5规范中的条目,它是一个"简单事件",它不会冒泡),所以你不能将它用于live或者delegate,它依赖于从一个元素冒泡到它的祖先的事件元件(一个或多个).
你必须把它挂在各个img元素上(在你设置它们之前这样做src,因为否则你会错过它;并且总是记得要注意error).(是的,你真的可以错过它:浏览器不是单线程的,只是JavaScript主线程.如果你设置src并且图像在缓存中或很快就可用,浏览器可以触发事件.事件被触发的方式是浏览器查看当事件被触发时注册的处理程序,并在JavaScript主线程返回浏览器时对要调用的处理程序进行排队.如果没有注册处理程序,则它们不会排队,并且你永远不会得到回调.)
| 归档时间: |
|
| 查看次数: |
9961 次 |
| 最近记录: |