Javascript:js不会在事件加载时执行

时间:2013-11-15 16:13:25

标签: javascript html javascript-events addeventlistener

我遇到了一个必须用evente执行的脚本问题。这是我的代码:

<html>
<head>
   <script  type="text/javascript" language="text/javascript">
    function isinview(obj) {
    var curleft= 0;
    var viewed=0;
    var curtop=0;
    if (obj.offsetParent) {

        do {
               curleft += obj.offsetLeft;
               curtop += obj.offsetTop;
        } while (obj = obj.offsetParent);
    }
    scroll=document.body.scrollTop;
    screenwidth=window.innerWidth;
    screenheight=window.innerHeight;
    if (screenheight+scroll>curtop){
        var script= document.createElement('script');
        script.type= 'text/javascript';
        script.src= 'http://ib.adnxs.com/ttj?id=1531490';
        document.getElementById("123").appendChild(script);
        viewed=1;
    }
}

</script>
</head>
<body>
<div align="center" id="123" onscroll="isinview(this);">pippo
</div>
<script language="javascript">
window.addEventListener("load", function(e){isinview(document.getElementById("123")); },"false");
</script>
</body>   

为什么页面在事件加载时不执行脚本?我根本无法理解。

由于

Alessio的

2 个答案:

答案 0 :(得分:0)

这在我当地有用 - 您可以使用console.log或内联alert进行验证。一个可能的问题是你已经命名了一个id为123的元素 - CSS ID不能以数字开头。你有什么期望呢?

答案 1 :(得分:-1)

使用jQuery代替:

$(document).ready(function(){ isinview($("#123")); });