jquery 的.on()绑定了load事件,结果不执行里面的函数

页面里面有这样的HTML模块

<div id="screen">
<div id="mark">
<img id="cover" src="图片地址"/>
</div>
</div>

然后我写了这样的js

$("#cover").load(function(){
  alert("OK!");
});

写成这样也不行

 $("#cover").on('load', function() {
  alert("OK!");
});

结果执行的时候,不会有弹出框出现,alert("OK!"); 根本没有执行?是什么问题呢?

我把 "#cover"换成"img" 就可以了?是什么原因呢?

求指教

阅读 6.6k
2 个回答

我测试是可以的哈,juqery1.9.1。
把 "#cover"换成"img" 就可以了,请检查你的id是否被覆盖了。或者打开chrome开发者工具调试一下。

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script src="jquery.js" type="text/javascript"></script> 
</head>
<div id="screen">
    <div id="mark">
        <img id="cover" src="img/dialog1_1.png"/>
    </div>
</div>
<script type="text/javascript">
    $("#cover").load(function(){
        alert("OK1!");
    });

    $("#cover").on('load', function() {
        alert("OK2!");
    });
</script>
</body>
</html>

没记错的话,jq从1.8版本开始,.load()方法就已经变成了ajax模块里面的了,和事件没关系。load()

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题