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


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


用法
.parentsUntil(  [selector ] [, filter ] ) => jQuery

說明:獲取當前匹配元素集合中每個元素的祖先,最多但不包括選擇器、DOM節點或jQuery對象匹配的元素。

  • 添加的版本:1.4.parentsUntil( [selector ] [, filter ] )

    • selector
      類型:Selector
      一個包含選擇器表達式的字符串,用於指示停止匹配祖先元素的位置。
    • filter
      類型:Selector
      一個字符串,包含一個選擇器表達式來匹配元素。
  • 添加的版本:1.6.parentsUntil( [element ] [, filter ] )

    • element
      類型:ElementjQuery
      一個 DOM 節點或 jQuery 對象,指示停止匹配祖先元素的位置。
    • filter
      類型:Selector
      一個字符串,包含一個選擇器表達式來匹配元素。

給定一個表示一組 DOM 元素的選擇器表達式,.parentsUntil() 方法遍曆這些元素的祖先,直到它到達與方法參數中傳遞的選擇器匹配的元素。生成的 jQuery 對象包含所有祖先,但不包括由 .parentsUntil() 選擇器匹配的那個。

如果選擇器不匹配或未提供,則將選擇所有祖先;在這些情況下,它選擇的元素與沒有提供選擇器時 .parents() 方法所做的相同。

從 jQuery 1.6 開始,第一個 .parentsUntil() 參數可以使用 DOM 節點或 jQuery 對象,而不是選擇器。

該方法可選地接受選擇器表達式作為其第二個參數。如果提供了此參數,則將通過測試它們是否匹配來過濾元素。

例子:

找到 <li class="item-a"> 直到 <ul class="level-1"> 的祖先,並給它們一個紅色的背景顏色。此外,找到 <li class="item-2"> 的祖先,其類為 "yes" 直到 <ul class="level-1"> 並給它們一個綠色邊框。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>parentsUntil demo</title>
  <script src="https://code.jquery.com/jquery-3.5.0.js"></script>
</head>
<body>
 
<ul class="level-1 yes">
  <li class="item-i">I</li>
  <li class="item-ii">II
    <ul class="level-2 yes">
      <li class="item-a">A</li>
      <li class="item-b">B
        <ul class="level-3">
          <li class="item-1">1</li>
          <li class="item-2">2</li>
          <li class="item-3">3</li>
        </ul>
      </li>
      <li class="item-c">C</li>
    </ul>
  </li>
  <li class="item-iii">III</li>
</ul>
 
<script>
$( "li.item-a" )
  .parentsUntil( ".level-1" )
    .css( "background-color", "red" );
 
$( "li.item-2" )
  .parentsUntil( $( "ul.level-1" ), ".yes" )
    .css( "border", "3px solid green" );
</script>
 
</body>
</html>

演示:

相關用法


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