我想在新标签页中右键单击后打开超链接。所以我调用onmouseup事件并检查右键单击并调用禁用功能。但禁用功能在这里不起作用。我不想隐藏链接,我只想禁用链接。
这是HTML
<html>
<body>
<a id="1" href="link1.html" onmouseup="if(event.button==2){disable(this.id)}">link_1</a>
<a id="2" href="link2.html" onmouseup="if(event.button==2){disable(this.id)}">link_2</a>
</body>
</html>
和JavaScript,
<script>
function disable(get)
{
document.get.style.display="block";
}
</script>
任何人都可以对此有所了解吗?
答案 0 :(得分:1)
我不确定您要在display:block
上设置<a>
来完成什么,但是您应该在浏览器中看到的错误是JavaScript,因为您document.get
是不正确。
由于您将元素ID传递给disable()
函数,您可以使用
document.getElementById(get).style.display = 'block';
设置显示属性。
或者只是传递this
而不是:
<a id="1" href="link1.html" onmouseup="if(event.button==2){disable(this)}">link_1</a>
<a id="2" href="link2.html" onmouseup="if(event.button==2){disable(this)}">link_2</a>
function disable(theLink) {
theLink.style.display="block";
}
要解决禁用问题,设置display:block
不会禁用该链接。您可能希望添加一个onclick
函数来消耗点击事件,如Disable link using javascript所示和/或修改<a>
样式以指示它已被禁用,例如设置颜色灰色。