【发布时间】:2017-06-11 09:31:18
【问题描述】:
为了防止出现以下问题:“JavaScript 文件是否已加载?” -> 是的,它已加载,在页面的页脚部分!我已经通过向控制台显示的简单消息检查了这一点!
但是:
我有一个带有按钮的页面:
<button id="portfolio-posts-btn">Load portfolio related blog posts</button>
还有一个文件 main.js:
var portfolioPostsBtn = document.getElementById('portfolio-posts-btn');
var portfolioPostsContainer = document.getElementById("portfolio-posts-container");
if (portfolioPostsBtn) {
portfolioPostsBtn.addEventListener("click", function () {
console.log("the button was clicked!");
});
}
文本the button was clicked! 应该显示在控制台中,但它保持为空!
显然,无法识别按钮单击,因此 var portfolioPostsBtn 为 false,或 NULL... -> 方法 addEventListener() 未被触发?
我看不出这是什么原因;我检查了拼写,我应该使用单引号还是双引号?请帮忙?
谢谢!
【问题讨论】:
-
确保在 DOM 初始化之后调用您的 javascript 代码。也许在您的情况下,当您调用脚本时 HTML 还不存在。我看不出其他原因,您的代码应该可以工作。尝试在 chrome/firefox 控制台中输入
document.getElementById('portfolio-posts-btn')。如果它返回一些东西,你就会遇到问题。如果它什么也没返回,你只是拼错了 id -
控制台有错误吗?
-
document.getElementById('portfolio-posts-btn')在控制台返回null。 -
问题解决了!请参阅下面我自己的答案。
标签: javascript wordpress