Javascript 脚本似乎在加载页面之前运行
我遇到了一个问题,还没有找到有效的解决方案。我尝试在Javascript 脚本似乎在加载页面之前运行,javascript,Javascript,我遇到了一个问题,还没有找到有效的解决方案。我尝试在addEventListener行之前添加if(ok按钮)条件,但仍然无法获得所需的输出。i、 e变量para指向的文本不会消失 let para = document.getElementById('paragraph'); let okButton = document.getElementById('Ok-button'); okButton.addEventListener('click', function() { para
addEventListener
行之前添加if(ok按钮)条件,但仍然无法获得所需的输出。i、 e变量para指向的文本不会消失
let para = document.getElementById('paragraph');
let okButton = document.getElementById('Ok-button');
okButton.addEventListener('click', function() {
para.style.display='none';
});
错误消息如下所示:
script.js:4未捕获类型错误:无法读取属性
的“addEventListener”
VM2610 script.js:4(匿名)@script.js:4处为空
可能的原因:
- 您的元素位于javaScript下面
- 您的按钮id为“ok button”,但您已使用“ok button”。Id是区分大小写的。(在DOM和JS的上下文中)
- 您的元素位于javaScript下面
- 您的按钮id为“ok button”,但您已使用“ok button”。Id是区分大小写的。(在DOM和JS的上下文中)
- 可能的原因:
var Ok-button = document.getElementById("Ok-button");
if (Ok-button.clicked == true) {
para.style.display='none';
}
尝试在按钮的代码之前添加If语句
var Ok-button = document.getElementById("Ok-button");
if (Ok-button.clicked == true) {
para.style.display='none';
}
正如在一些评论中提到的,我在.js文件中使用的元素在我的HTML文档中的脚本标记下面声明。将script标记移到closing body标记的正上方解决了这个问题。如一些评论所述,我在.js文件中使用的元素在HTML文档中的script标记下方声明。将脚本标记移到结束正文标记的正上方解决了问题。在段落和按钮之后加载js文件。检查id,因为它们也区分大小写。在段落和按钮之后加载js文件。检查id,因为它们也区分大小写。不,你错了。在addEventListener()中有函数(){}。再次检查。试试看,我想我已经为解决方案提供了资金。OP的代码很好。他只是在DOM之前加载了脚本,或者他的按钮id不匹配,因为DOM id区分大小写。解决方案必须符合OP的代码。实现这一点的方法有很多。无论如何,变量名不能使用连字符,因为连字符是运算符。不,你错了。在addEventListener()中有函数(){}。再次检查。试试看,我想我已经为解决方案提供了资金。OP的代码很好。他只是在DOM之前加载了脚本,或者他的按钮id不匹配,因为DOM id区分大小写。解决方案必须符合OP的代码。实现这一点的方法有很多。无论如何,变量名不能使用连字符,因为连字符是运算符。谢谢兄弟。元素确实在脚本标记之下,区分大小写也是一个问题。再次非常感谢:)谢谢兄弟。元素确实在脚本标记之下,区分大小写也是一个问题。再次表示感谢:)有助于解决问题。另外,我在HTML页面上使用了“ok按钮”作为id。感谢您的帮助:)有助于解决此问题。另外,我在HTML页面上使用了“ok按钮”作为id。谢谢你的帮助:)