返回介绍

.has()

发布于 2017-09-11 14:08:29 字数 1733 浏览 1082 评论 0 收藏 0

所属分类:遍历 > 过滤

.has( selector )返回: jQuery

描述: 筛选匹配元素集合中的那些有相匹配的选择器或DOM元素的后代元素。

  • 添加的版本: 1.4.has( selector )

    • selector 类型: String 一个用于匹配元素的选择器字符串。
  • 添加的版本: 1.4.has( contained )

    • contained 类型: Element 用于匹配元素的DOM元素。

如果提供一个jQuery对象代表DOM元素集合, .has() 方法会用其子集创建一个新的jQuery对象。提供的选择器会一一测试原先那些匹配元素的后代,含有匹配后代的元素会保留在结果中。

下面是一个嵌套列表的页面:

 <ul>
  <li>list item 1</li>
  <li>list item 2
    <ul>
      <li>list item 2-a</li>
      <li>list item 2-b</li>
    </ul>
  </li>
  <li>list item 3</li>
  <li>list item 4</li>
</ul>

我们可以用如下方式对列表项集合应用这个方法:

$('li').has('ul').css('background-color', 'red');

结果是 item 2 背景变成了红色,因为只有这个 <li> 含有 <ul> 后代。

例子:

检测是否一个元素在另一个之内。

<!DOCTYPE html>
<html>
<head>
  <style>
  .full { border: 1px solid red; }
</style>
  <script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>
</head>
<body>
 
<ul><li>Does the UL contain an LI?</li></ul>
 
<script>
  $("ul").append("<li>" + ($("ul").has("li").length ? "Yes" : "No") + "</li>");
  $("ul").has("li").addClass("full");
</script>
 
</body>
</html>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文