Javascript 有没有办法确定一个键控元素不是某个特定的父元素,还是该父元素的子元素?
经过数小时的搜索,我似乎找不到解决方案:-( 我试过了,但没有用:Javascript 有没有办法确定一个键控元素不是某个特定的父元素,还是该父元素的子元素?,javascript,jquery,Javascript,Jquery,经过数小时的搜索,我似乎找不到解决方案:-( 我试过了,但没有用: jQuery('#someGlobalNav').delegate('*','keyup', function(){ if(!(jQuery('#itemsForSale').find(jQuery(this))){// do something} jQuery("#itemsForSale, #itemsForSale > * ").focusout(function(){} 尝试使用:not和:contain
jQuery('#someGlobalNav').delegate('*','keyup', function(){
if(!(jQuery('#itemsForSale').find(jQuery(this))){// do something}
jQuery("#itemsForSale, #itemsForSale > * ").focusout(function(){}
尝试使用:not和:contains
基本上,我有一组链接。让我们使用以下链接:
<div id="someGlobalNav">
<ul id='siteNavigation'>
<li id="itemsForSale">
<div id="items">
<ul id='itemNav'>
<li>
<div id="menu1">
<ul>
<li><a href="link">menu 1 item 1</a></li>
<li><a href="link">menu 1 item 2</a></li>
</ul>
</div>
</li>
<li>
<div id="menu2">
<ul>
<li><a href="link">menu 2 item 1</a></li>
<li><a href="link">menu 2 item 2</a></li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li><a href="link">Link that Might exist</a></li>
<li><a href="link">AnotherLink that Might exist</a></li>
</ul>
<div><a href="somelink">Arbitrary link</a></div>
</div>
一切都被捕捉到了,等等。唯一的问题是,我只想对不是“itemsForSale”或其子元素的元素进行操作。因此,作为一个通过链接键入的用户,在他们键入itemsForSale之外的空翻之前,一切都是好的--
我想使用:不-但我不知道选择器,因为导航是动态的。我尝试了各种各样的事情,但没有运气
任何想法对于您的问题,过于简化的解决方案如下所示:
$('a:not(#itemsForSale *)');
jsbin上的演示:是的-我使用的是jQuery 1.6,没有升级选项。:-(我想我可以修改您必须的内容使其工作。我会喜欢它,在我完成测试后,我会接受。感谢您的回复,谢谢。