简体   繁体   English

当我从另一个页面加载时,JavaScript无法正常工作

[英]JavaScript is not working properly when I load from another page

When I load javascript from a seprate file it is not working properly but when I load same script from within the pa 当我从单独的文件加载JavaScript时,它无法正常工作,但是当我从PA内部加载相同的脚本时,

 var button = document.querySelector("button"); var p = document.querySelector("p"); button.addEventListener("click",function(){ p.textContent = "Someone Clicked"; }); 
 <!DOCTYPE html> <html> <body> <script type="text/javascript" src="listen.js"></script> <a href="https://www.google.co.in">My Link</a> <img src="logo.png"> <button>Click Me</button> <p>No one Has Clicked yet!</p> </body> </html> 

ge it works correctly. ge可以正常工作。

You are loading js file in the header and selecting button and p tag which are not present DOM at that time. 您正在标题中加载js文件,然后选择当时不存在DOM的button和p标签。 either you can load your script in bottom of your page like this: 您可以像这样在页面底部加载脚本:

 `<body>
    <a href="https://www.google.co.in">My Link</a>
    <img src="logo.png">
    <button>Click Me</button>
    <p>No one Has Clicked yet!</p>
    <script type="text/javascript" src="listen.js"></script>
  </body>`

or you can put your script in window.onload() function. 或者您可以将脚本放入window.onload()函数中。 It will wait for page to load and then it will run your code. 它将等待页面加载,然后将运行您的代码。

window.addEventListener('load', function () {
    var button = document.querySelector("button");
    var p = document.querySelector("p");
    button.addEventListener("click",function(){
      p.textContent = "Someone Clicked";
    });
}, false);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM