gpt4 book ai didi

javascript - 如果我使用 javascript 将监听器添加到父元素,是否删除特定子元素的事件监听器?

转载 作者:太空宇宙 更新时间:2023-11-03 23:32:42 32 4
gpt4 key购买 nike

在我的程序中,我在表中添加了一个 onclick 监听器。我想要的是当监听器触发时 [当我单击表格单元格时],我想禁用该特定单元格的监听器。除了向每个 td 元素添加监听器并在触发时删除特定 td 的监听器之外,还有其他可能的方法吗?我的 html 看起来像这样:

                    <table id="board">
<tr>
<td id="c1"> 1</td>
<td id="c2"> 2</td>
<td id="c3"> 3</td>
</tr>
<tr>
<td id="c4"> 4</td>
<td id="c5"> 5</td>
<td id="c6"> 6</td>
</tr>
<tr>
<td id="c7"> 7</td>
<td id="c8"> 8</td>
<td id="c9"> 9</td>
</tr>
</table>

我添加的监听器是这样的:

var table = getId("board", 1);
table.addEventListener('click', sample , false);
function sample( evt ) {
alert(evt.target.innerHTML);
}

最佳答案

您可以在那些已点击的元素上存储一些标志。例如在数据属性中:

function sample(evt) {
var target = evt.target;

if (!target.getAttribute('data-clicked')) {
target.setAttribute('data-clicked', true);
alert(evt.target.innerHTML);
}
}

演示:http://jsfiddle.net/7SMrE/

关于javascript - 如果我使用 javascript 将监听器添加到父元素,是否删除特定子元素的事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24859871/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com