當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


JQuery .has()用法及代碼示例

用法
.has( selector ) => jQuery

說明:將匹配元素集減少為具有與選擇器或 DOM 元素匹配的後代的元素。

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

    • selector
      類型:String
      一個字符串,包含一個選擇器表達式來匹配元素。
  • 添加的版本:1.4.has( contained )

    • contained
      類型:Element
      用於匹配元素的 DOM 元素。

給定一個表示一組 DOM 元素的 jQuery 對象,.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" );

此調用的結果是項目 2 的紅色背景,因為它是其後代中唯一具有 <ul><li>

例子:

檢查一個元素是否在另一個元素內。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>has demo</title>
  <style>
  .full {
    border: 1px solid red;
  }
  </style>
  <script src="https://code.jquery.com/jquery-3.5.0.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>

演示:

相關用法


注:本文由純淨天空篩選整理自jquery.com大神的英文原創作品 .has()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。