最后执行Javascript

时间:2012-07-12 17:39:55

标签: javascript jquery onload

我想在加载HTML时在最后执行一个函数。我用onload试了一下但没有成功。我也尝试过ready,但它仍然不起作用。这是我的代码。这再次放在标题中:

<script type="text/javascript"> 
     $(document).ready(function() { 
     $('#infowindow_content').html('test');
     });
</script>

div也由外部JS文件设置。含量:

window.onload = initialize;

function initialize() {
    document.getElementById('infowindow_content').innerHTML = 'testa';
}

在关闭的body-tag之前包含以下方式:

<script type="text/javascript" src="../lib/functions.js"></script>

我尝试将上面的代码放在关闭的body-tag之前,但是目前我不知道为什么这不起作用(内容不会被我的Javascript更改)。如果我之后在控制台上执行它,一切正常。

解决方案:

我在HTML文件中设置了配置参数(语言)。在JS文件中,我要求这个值,并根据值定义另一个内容。有时可能会这么简单......

3 个答案:

答案 0 :(得分:5)

试试这个:

setTimeout(function() {
 $(document).ready(function() { 
     $('#infowindow_content').html('test');
 });
}, 20);

答案 1 :(得分:1)

我不知道jQuery等价,但尝试原生JS。

由于<body>拥有最多的HTML&amp;在<head> ...

之后加载
document.body.onload=function(){
    yourFunction(args)
}
<body onload="yourFunction(args)">...</body>

或者也许是window对象,因为它是每个网页DOM的根源......

window.onload=function(){
    yourFunction(args)
}

答案 2 :(得分:0)

始终将DOM操作代码直接放在</body>标记之前。标题中的Javascript只应调用库,例如​​jquery。