先click,再使用load()判断iframe是否加载完成,为什么失效了,但是直接使用load(),为什么就可以成功判断?
请看js里面的,为什么第一种就失效了,第二种就成功了?
<!DOCTYPE html>
<html>
<head>
<meta content="width=device-width, initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" name="viewport" />
<meta charset="UTF-8" />
<title></title>
</head>
<body>
<div id="a">判断iframe是否加载完成</div>
<iframe src="http://www.qq.com/" style="height:500px;width:600px;" id="b"></iframe>
</body>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
//---------------第一种----------------------
$("#a").on('click',function(){
$("#b").load(function(){
console.log("完成!--2")
})
})
//--------------第二种--------------------
$("#b").load(function(){
console.log("完成!--1")
})
})
</script>
</html>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这里的load相当于原生js的onload,是状态监听,你把他放到function里面,点击的时候,iframe可能已经加载完了,所以会一直监听不到