如何在我的DOM加载后和另一个js加载完成后检查执行一些javascript?

时间:2013-01-10 07:58:59

标签: javascript

我正在使用javascript Placeholders.js一旦我的页面被加载,它说应该执行如下脚本:

Placeholders.init({     live:true,//也适用于未来和修改过的元素     hideOnFocus:true //元素获得焦点时隐藏占位符 });

我不使用jQuery。我如何知道何时执行init,因为它取决于两件事:Placeholders.js脚本已加载,我的表单字段已加载。

2 个答案:

答案 0 :(得分:1)

  

我如何知道何时执行init,因为它取决于两件事:已加载的Placeholders.js脚本和已加载的表单字段。

script标记放在文档底部的Placeholders.init调用,就在结束</body>标记之前。此时所有元素都可以访问。

示例:

<body>
  <input id="theField" value="value from HTML" type="text">
  <script>
    document.getElementById("theField").value =
      "value from JavaScript";
  </script>
</body>

Live Copy | Source

结果是该字段包含文本"value from JavaScript"。可靠,跨浏览器。

参考文献:

答案 1 :(得分:-1)

您可以这样检查:

if (document.readyState === 'complete') {
    // insert your code here
}

在文档完全加载之前,上述'if'语句中的内容将不会运行。在jQuery中你可以这样做:

$(document).ready(function() { // insert code here });