“部分”document.ready()

时间:2011-12-28 01:29:55

标签: javascript jquery

我想在ID为#container的元素加载到DOM上时执行一个函数。

我可以在加载后立即开始填充#container,而不是像document.ready()那样等待整个DOM加载。

我使用require.js加载我的脚本,backbone.js用于组织。

我最好的方法是什么?

3 个答案:

答案 0 :(得分:8)

我认为最简单的方法就是将您的脚本完全放在#container之后。

像这样:

<div id="container"><!-- content --></div>
<script>
  var container = document.getElementById('container');
  // do stuff with container here
</script>

答案 1 :(得分:1)

<div id="container"></div>
<script>
$('#container').html('I am changed.');
</script>

$(document).ready(function(){
    alert('Is it changed?');
});

http://jsfiddle.net/SFmWa/

答案 2 :(得分:0)

只需将Javascript放在页面中所需的元素之后,它就会按顺序进行解析,并在#container被解析并“加载”后立即执行。

<div id="container"> ... </div>
<script type="text/javascript" charset="utf-8">
    $('#container')...
</script>