如何收听脚本标签的onload事件?

时间:2015-05-22 09:35:28

标签: javascript dom-events

<script id="me" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script
<script>
    var oB = document.getElementsById('me');
    me.onload = function(){
        alert('OK');
    }
</script>

为什么在加载脚本后没有触发me.onload

3 个答案:

答案 0 :(得分:1)

有两个问题:

  • 第一行末尾缺少>(您已撰写</script而不是</script>
  • 没有变量me:您已将脚本标记检索到变量oB

因此,您可以通过将me.onload = ...更改为ob.onload = ...来修复代码。

此外,您应该避免使用<script onload="...">等事件侦听器的内联声明。

最后但并非最不重要的是,您应该使用addEventListener代替onxxxaddEventListener vs onclick

答案 1 :(得分:0)

在执行警报代码之前,已经下载了标识为“我”的脚本标记,因此,尽管代码中存在语法错误,但您无法收到警报。

你可以简单地使用:

<script id="me" onload="alert('OK');"src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

答案 2 :(得分:0)

document.getElementById代替document.getElementsById

oB代替me

<script id="me" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script
<script>
    var oB=document.getElementById('me');
    oB.onload=function(){
        alert('OK')
    }
</script>

但这不会起作用,因为我已经像其他答案状态一样加载了。