我想要做的是让一个表格元素监听一个onclick()事件,当这个事件引发时,做一些事情然后添加另一个键盘事件监听这个表格单元元素,但它似乎不起作用,即使添加了新的事件监听器。一个HTML元素监听一个事件,然后监听另一个事件
我具有由html标签在10×10的表,并且它们中的每一个分配ID从0到99
这是我的代码:
for(i=0; i<100; i++){
var cell = document.getElementById(i);
cell.addEventListener("click", handleClick);
}
function handleClick(e){
var cell = e.target;
console.log(cell);
cell.addEventListener("keyup", handleInput);
console.log(true);
cell.removeEventListener("click", handleClick);
console.log(true);
}
function handleInput(e){
var key = e.keyCode;
var i = e.target.id;
console.log(key);
document.getElementById(i).innerHTML = key;
}
的handleInput()函数当我按下单元格上的一个按键时,不会调用它,此外,控制台在单击单元格后显示两次'true'。
谁能告诉我有没有这个问题?以及如何解决它以实现我的目标。非常感谢。
什么信息是你的日志显示?直到你的代码到达哪里? –
当我按下单元格上的某个键时,不会调用handleInput()函数,此外,控制台显示'true'两次,表示新的键盘事件侦听器已成功添加。谢谢! – user5220361