【问题标题】:Find all link in a div element and disable them all查找 div 元素中的所有链接并将其全部禁用
【发布时间】:2013-06-19 08:54:35
【问题描述】:

假设我有一些这样的 HTML 元素:

<div id="content_div">
    <span><a href="some_link">Click me</a></span>
    <div> Hello everybody. Click <a href="some_link_else">me</a> to do something else</div>

    <a href="3rd_link"> Oops </a>
</div>

我只需要在#content_div 中获取所有“a”标签并禁用所有标签(我不希望用户点击它们)。我怎么能在 Jquery 中做到这一点?

【问题讨论】:

  • “禁用”链接是什么意思?

标签: jquery html hyperlink find disable-link


【解决方案1】:

我会减少对 jQuery 的依赖,因为它可能会被用户禁用,所以如果你想要一个 CSS 解决方案,你可以这样做

#content_div {
   pointer-events: none;
   cursor: default;
}

Demo

编辑:准确地说,使用这个声明#content_div a

【讨论】:

  • 在 11 之前的 IE 中不起作用,但如果可以接受的话,这是一个很好的解决方案!
【解决方案2】:

试试这个:

 $("#content_div a").click(function(e) {
   e.preventDefault();
 });

【讨论】:

    【解决方案3】:
    $("#content_div a").css({"color":"#888888", cursor: "default"}).click(function(e){
       e.preventDefault();
    });
    

    工作示例 http://jsfiddle.net/P4Fqq/

    【讨论】:

    • 非常感谢。我不能一次接受 2 个答案,所以我赞成你的答案。
    • @quangtruong1985 查看更新后的代码,该代码会更改光标以指示无法单击。
    【解决方案4】:

    这里有两种方式:

    1) $('#content a').css({"pointer-events":"none"});

    2)$('#content a').click(function(e){ e.preventDefault(); });

    【讨论】:

    • 在此之后如何启用事件?
    猜你喜欢
    • 1970-01-01
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多