jQuery 禁用链接

2024-01-29

任何人都知道如何禁用 jquery 中的链接而不使用return false;?

具体来说,我想要做的是禁用某个项目的链接,使用 jquery 执行单击它会触发一些内容,然后重新启用该链接,以便再次单击它时它会默认工作。

谢谢。 戴夫

UPDATE这是代码。之后需要做什么.expanded已应用的类是为了重新启用禁用的链接。

$('ul li').click(function(e) {
    e.preventDefault();
    $('ul').addClass('expanded');
    $('ul.expanded').fadeIn(300);
    //return false;
});

$('#myLink').click(function(e) {
    e.preventDefault();
    //do other stuff when a click happens
});

这将阻止超链接的默认行为,即访问指定的 href。

来自 jQuerytutorial http://docs.jquery.com/Tutorials:How_jQuery_Works:

对于点击和大多数其他事件,您 可以防止默认行为 - 在这里,点击 jquery.com 的链接 - 通过在事件处理程序中调用 event.preventDefault()

如果你想preventDefault()仅当满足特定条件(例如隐藏某些内容)时,您才可以使用该类测试 ul 的可见性expanded。如果它是可见的(即不是隐藏的),则链接应该正常触发,因为不会输入 if 语句,因此不会阻止默认行为:

$('ul li').click(function(e) {
    if($('ul.expanded').is(':hidden')) {
        e.preventDefault();
        $('ul').addClass('expanded');
        $('ul.expanded').fadeIn(300);
    } 
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery 禁用链接 的相关文章