【发布时间】:2021-05-06 08:43:30
【问题描述】:
document.getElementById("img1").addEventListener("click", function(event){
event.preventDefault()
});
我已经尝试了上面的 JavaScript,它确实禁用了链接,同时保留了我想要的右键和中键单击操作。
但是,我有很多链接,每个链接都有一个动态创建的 ID,我不知道如何将 ID 传递给上述代码。
我尝试了以下方法:
HTML:
<a id="img' . $row["idImage"] . '" onClick="passID(this.id)" href="images/img01"><div></div></a>
JavaScript:
function passID(linkId) {
var imgid = linkId;
alert(imgid);
document.getElementById(imgid).addEventListener("click", function(event) {
event.preventDefault()
});
但它不会禁用链接。我输入了一个警报,它确实返回了点击链接的正确 ID,但没有禁用它,所以我对如何从这里开始有点茫然。
【问题讨论】:
-
hmm
ids 是唯一的,仅用于一个元素,您是否尝试过使用类并循环它们以添加事件监听器? -
看看event delegation,动态id容易出错,做很多不必要的工作。
标签: javascript getelementbyid disable-link