【问题标题】:How to change behavior of <a href="somewhere.html" id="link"> with jQuery?如何用 jQuery 改变 <a href="somewhere.html" id="link"> 的行为?
【发布时间】:2009-09-18 10:15:31
【问题描述】:

对于启用了 javascript 的用户,点击它们应该会执行 OnClick()

对于那些禁用 javascript 的人,点击它们应该只是转到某个地方.html,

假设只有 $('#link') 可以访问,怎么做?

【问题讨论】:

    标签: jquery href


    【解决方案1】:

    像这样:

    $('#link').click(function() { 
        //...
        return false;
    });
    

    return false,链接不会被关注。

    如果禁用 Javascript,则不会添加点击处理程序,并且链接将正常运行。

    【讨论】:

    • 如果我想根据情况正常表现怎么办?
    • @Darwin:使用if 声明?
    • 我的意思是。我需要在函数上返回什么才能遵循链接?
    • @Darwin: true,或者什么都没有。
    【解决方案2】:

    $("#link").bind("click", function(e){alert("clicked"); e.preventDefault(); return false;});

    这将提示“点击”,然后取消默认操作。如果 Javascript 被禁用,则链接将被访问。

    【讨论】:

    • $.bind 和 $.click 有什么区别?
    • $.bind 还采用要绑定到的事件名称:docs.jquery.com/Events/bind#typedatafn 这个答案是错误的,并且不会起作用,因为它没有传递事件名称。
    • 感谢 SLaks,忘记添加“点击”参数。固定
    【解决方案3】:

    使用click 函数。将return false 添加到函数末尾以防止单击的默认操作,该操作位于超链接之后:

    $("#link").click(function() { onClick(); return false; });
    

    【讨论】:

    • 现在有 - return false.
    猜你喜欢
    • 2010-11-30
    • 2015-10-16
    • 2013-11-20
    • 1970-01-01
    • 2017-02-21
    • 1970-01-01
    • 2011-02-01
    • 1970-01-01
    • 2023-02-02
    相关资源
    最近更新 更多