.prevAll()

.prevAll( [ selector ] ) 官网原E文: jQuery

描述: 获得集合中每个匹配元素的所有前面的兄弟元素,选择性筛选的选择器。

  • version added: 1.2.prevAll( [ selector ] )

    selector一个用于匹配元素的选择器字符串。

如果提供的jQuery代表了一组DOM元素, .prevAll() 方法允许我们能够通过搜索DOM树,在它们前面的元素和从匹配的元素构造一个新的jQuery对象。

该方法选择性地接受同一类型选择器表达式,我们可以传递给$()函数。如果选择供应,将被过滤的元素通过测试它们是否匹配。.

考虑一个页面上有一个简单的列表:

<ul>
   <li>list item 1</li>
   <li>list item 2</li>
   <li class="third-item">list item 3</li>
   <li>list item 4</li>
   <li>list item 5</li>
</ul>

如果我们在第三个项目开始之前,我们可以找到它面前的元素来:

$('li.third-item').prevAll().css('background-color', 'red');

此调用的结果是项目1和2的背景为红色。由于我们没有提供一个选择的表达,这些元素被明确列入前款为对象的一部分。如果我们有提供一个,这个元素将被测试的内容在匹配之前,他们都包括在内。

Example:

Locate all the divs preceding the last div and give them a class.

<!DOCTYPE html>
<html>
<head>
  <style>

  div { width:70px; height:70px; background:#abc; 
        border:2px solid black; margin:10px; float:left; }
  div.before { border-color: red; }
  </style>
  <script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
<script>$("div:last").prevAll().addClass("before");</script>

</body>
</html>

Demo:

jQuery 1.6 API 中文版Clove整理、修订