如何声明尚未渲染的变量

时间:2020-05-06 16:36:50

标签: javascript jquery

我有一个使用jQuery的项目。我正在尝试将此脚本转换为Javascript。我在该脚本上有以下一行。

var a = $("#myImage");

我将其更改为

var a = document.getElementById("myImage");

但是脚本不起作用,因为发生这种情况时我的页面尚未加载。我不知道该如何解决。任何帮助将不胜感激。谢谢。

5 个答案:

答案 0 :(得分:2)

<body onload="var a = document.getElementById("myImage");">
</body>

onload="var a = document.getElementById("myImage");"在内容完全加载后运行。当主体完全加载后,var a = document.getElementById("myImage");将运行。

答案 1 :(得分:1)

页面加载后,您需要执行脚本。

window.addEventListener("load", function(){
  // .... Add your script here
});

答案 2 :(得分:1)

您可以在document对象上包括一个侦听器,以等待DOM加载。

document.addEventListener('DOMContentLoaded', function(event) {
  var a = document.getElementById("myImage");
})

答案 3 :(得分:1)

尝试使用。

window.addEventListener('DOMContentLoaded', function(){

       var a = document.getElementById("myImage");
       //Rest code here

});

答案 4 :(得分:1)

例如,您可以:

  1. 在关闭<script>标签之前放置相应的</body>标签。
  2. 开始做事when document is loaded using a callback

我个人更喜欢1st选项,因为根据我的经验,它更稳定。