JavaScript无法检测到对td的点击

问题描述 投票:0回答:1

JavaScript无法检测到对表格单元格的点击,代码不起作用。代码:

document.querySelectorAll("td").forEach(e => e.addEventListener("click", function(){
    console.log(this.cellIndex);
    console.log(this.innerText);
    console.log(document.querySelectorAll("th")[this.cellIndex].innerText);
}));

如果我将此代码粘贴到控制台中,它将起作用,但是作为单独的.js文件或html代码,它将不起作用。有什么问题吗?

javascript click addeventlistener
1个回答
0
投票

如果将上面的代码作为单独的HTML文件链接,并且导入脚本标记在

中,请确保所有与DOM相关的函数必须在DOMContentLoaded或load事件回调中。

对于此实例,将脚本更改为:

`onload =()=> {

document.querySelectorAll("td").forEach(e => e.addEventListener("click", function(){
    console.log(this.cellIndex);
    console.log(this.innerText);
    console.log(document.querySelectorAll("th")[this.cellIndex].innerText);
}));

}`

© www.soinside.com 2019 - 2024. All rights reserved.