Jquery:包含无法正常工作

Jquery :contains not working properly

我正在尝试检查 div 元素是否包含某个词,然后根据它是否包含该词来做一些事情。

我正在使用 :contains 选择器,但即使我使用了 div 中没有的词,它仍然 运行 是函数。此外,如果我 运行 一个 if else,则无论单词是否在 div 中,if 总是通过。

这是我的代码:

if ( $("#navBreadCrumb a:contains('Apples')") ) {
   console.log('Not Oranges');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="navBreadCrumb">
  <a class="bp" href="#">Home</a> &nbsp;::&nbsp;
  <a class="bp" href="#">Fruits</a>&nbsp;::&nbsp;
  <a class="bp" href="#">Citrus</a>&nbsp;::&nbsp;
  <a class="bp" href="#">Oranges</a>&nbsp;::&nbsp;
  Navel Oranges
</div>

我缺少 :contains 选择器的什么?

提前致谢。

-S

这么近。您应该使用 .length 来检查是否存在包含 "Apple" 的元素。

所以应该是:

if ( $("#navBreadCrumb a:contains('Apples')").length ) {
   console.log('Not Oranges');
}

Fiddle