我试图理解jQuery中的'load'事件,如下所述:http://api.jquery.com/load-event/.到目前为止,我甚至无法触发它!
这是一些示例代码.出现的唯一控制台消息是"DOM READY" - 不是单个加载调用.用.bind('load',..)替换对.load()的调用没有任何区别.
<!DOCTYPE html>
<html>
<head>
<script src="lib/jquery.min.js"></script>
<script>
$(function(){
console.log("DOM READY");
});
$(document).load(function(){
console.log("Document Loaded");
});
$('#foo').load(function(){
console.log("foo loaded");
});
$('#bar img').load(function(){
console.log('image loaded');
});
$('#bar').load(function(){
console.log('bar loaded');
});
</script>
</head>
<body>
<div id="foo">Hellow world</div>
<div id="bar">
<img src="pics/pig.png"/>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
您无法绑定到尚不存在的项目.例如,当您执行以下操作时:
$('#foo').load(function(){
console.log("foo loaded");
});
Run Code Online (Sandbox Code Playgroud)
该#foo项目不存在,因此您无法绑定到其load事件.还要注意文档对.load事件本身的说法:
此事件可以发送到与URL关联的任何元素:图像,脚本,框架,iframe和窗口对象.
你的div元素不会"加载".