尽管该链接被禁用,但它仍然是可点击的。
<a href="/" disabled="disabled">123n</a>
如果它是禁用的,我可以使它不可点击吗?我应该使用JavaScript吗?
尽管该链接被禁用,但它仍然是可点击的。
<a href="/" disabled="disabled">123n</a>
如果它是禁用的,我可以使它不可点击吗?我应该使用JavaScript吗?
当前回答
让父类有指针事件:none将禁用子类a标签,如下所示(要求div覆盖a并且宽度/高度不为0):
<div class="disabled">
<a href="/"></a>
</div>
地点:
.disabled {
pointer-events: none;
}
其他回答
超链接没有disabled属性。如果你不想要某些东西被链接,那么你需要移除<a>标签。
或者,你可以删除它的href属性-尽管这有其他的用户体验和可访问性问题,在下面的评论中指出,所以不建议。
如果你想摆脱指针,你可以用css使用游标。
以下是禁用a标记的各种方法:
<a >链接文本</a>从锚标签中移除href <a href= " javascript:void(0) " />链接文本</a>在href中放入javascript:void(0) <a href="/" onclick="return false;">链接文本</a>使用返回false 因为锚标签没有被禁用的属性。 如果你想在jQuery函数中停止锚标记行为,你可以在函数的开头使用下面的行:
$( "a" ).click(function( e ) {
e.preventDefault();
$( "<div>" )
.append( "default " + e.type + " prevented" )
.appendTo( "#log" );
});
event.preventDefault ()
你可以通过返回false来禁用锚标记。在我的情况下,我使用angular和ng-disabled的Jquery手风琴,我需要禁用部分。
所以我创建了一个小js片段来解决这个问题。
<a class="opener" data-toggle="collapse"
data-parent="#shipping-detail"
id="shipping-detail-section"
href="#shipping-address"
aria-expanded="true"
ng-disabled="checkoutState.addressSec">
Shipping Address</a>
<script>
$("a.opener").on("click", function () {
var disabled = $(this).attr("disabled");
if (disabled === 'disabled') {
return false;
}
});
</script>
当您将鼠标移到href标签上时,href标签中的任何内容都将显示在浏览器窗口的左下角。
我个人认为像javascript:void(0)这样的东西显示给用户是可怕的。
相反,关闭href,使用jQuery/其他工具,添加一个样式规则(如果你仍然需要它看起来像一个链接):
a {
cursor:pointer;
}