我有一个页面,在div中有一些链接,在div之外有一些链接。
<div id="navigation">
<ul>
<li>
<a href="/Home/Index">Home</a></li>
<li>
<a href="/Home/contactus">Contact Us</a></li>
</ul>
</div>
<a href="/User/SignIn">Sign In</a>......
我需要为navigation
div内的所有链接禁用click事件。
如何在jquery中使用类似于:
的方法//disable Click event for links
$("a:not([id])").live('click', function(e) {
e.preventDefault;
return false;
});
答案 0 :(得分:6)
经过尝试,以下实施工作:
//disable Click event for links except navigation
$("a:not(#navigation a)").live('click', function(e) {
e.preventDefault;
return false;
});
本
中的任何缺陷答案 1 :(得分:2)
一般来说,这听起来不是一个好主意,但这就是我要做的事情:
$('a[href]').live ('click', function (e)
{
if (!$(this).parents('#navigation').length))
return false; // same as e.preventDefault() & e.stopPropogation()
});
答案 2 :(得分:0)
受K Prime答案的启发:
$('a')
.filter(function(){return $(this).parents('#navigation').length == 0})
.live('click', function(e) {
return false;
});