Heim  >  Artikel  >  Web-Frontend  >  iframe的onload在Chrome/Opera中执行两次Bug的解决方法_javascript技巧

iframe的onload在Chrome/Opera中执行两次Bug的解决方法_javascript技巧

WBOY
WBOYOriginal
2016-05-16 18:09:051439Durchsuche
复制代码 代码如下:





iframe的onload在Chrome/Opera中执行两次


<script> <BR>var ifr = document.createElement('iframe'); <BR>ifr.onload = function(){alert(1);}; <BR>document.body.insertBefore(ifr,document.body.childNodes[0]); <BR>ifr.src = 'http://www.baidu.com'; <BR></script>



解决方法很简单,改下代码顺序即可:创建iframe, 添加到body中,最后添加load事件。所有浏览器下将表现一致。
复制代码 代码如下:

var ifr = document.createElement('iframe');
document.body.insertBefore(ifr,document.body.childNodes[0]);
ifr.src = 'http://www.baidu.com';
ifr.onload = function(){alert(1);};

此外用Safari5测试,没有alert,一直在载入中,能持续30s以上。大家试试看呢?
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn