jQuery 遍歷 not() 方法
jQuery 遍歷 not() 方法
not() 從匹配元素集合中刪除元素。
1. 語法 1
.not(selector)
參數(shù) | 描述 |
---|---|
selector | 字符串值,包含用于匹配元素的選擇器表達式。 |
2. 語法 2
.not(element)
參數(shù) | 描述 |
---|---|
element | 一個或多個需要從匹配集中刪除的 DOM 元素。 |
3. 語法 3
.not(function(index))
參數(shù) | 描述 |
---|---|
function(index) | 用于檢測集合中每個元素的函數(shù)。this 是當前 DOM 元素。 |
如果給定一個表示 DOM 元素集合的 jQuery 對象,.not() 方法會用匹配元素的子集構(gòu)造一個新的 jQuery 對象。所應用的選擇器會檢測每個元素;不匹配該選擇器的元素會被包含在結(jié)果中。
請思考下面這個帶有簡單列表的頁面:
<ul> <li>list item 1</li> <li>list item 2</li> <li>list item 3</li> <li>list item 4</li> <li>list item 5</li> </ul>
我們可以向列表項集應用該方法:
$('li').not(':even').css('background-color', 'red');
這次調(diào)用的結(jié)果是將項目 2 和 4 設(shè)置為紅色背景,這是因為它們不匹配選擇器(回憶一下,:even 和 :odd 均使用基于 0 的 index)。
4. 移除具體的元素
.not() 方法的第二個版本允許我們從匹配集中刪除元素,假設(shè)我們之前已經(jīng)通過其他手段找到了這些元素。例如,設(shè)想一個列表已經(jīng)將 id 應用到其中一個項目中:
<ul> <li>list item 1</li> <li>list item 2</li> <li id="notli">list item 3</li> <li>list item 4</li> <li>list item 5</li> </ul>
我們可以使用原生的 JavaScript 函數(shù) getElementById() 讀取第三個列表項,然后把它從 jQuery 對象中刪除:
$('li').not(document.getElementById('notli')).css('background-color', 'red');
這條語句改變項目 1、2、3 和 5 的背景色。我們可以用更簡單的 jQuery 表達式來完成同樣的事情,但是這項技術(shù)在比方說其他庫提供對純 DOM 節(jié)點的引用時會很有用。
對于 jQuery 1.4,.not() 方法能夠采用函數(shù)作為其參數(shù),與 .filter() 方法相同。其函數(shù)返回 true 的元素會被排除在過濾集之外;所有其他元素將被包含其中。
5. 范例
從包含所有段落的集合中刪除 id 為 "selected" 的段落:
$("p").not("#selected")
相關(guān)文章
- jQuery 安裝
- jQuery 效果 淡入淡出
- jQuery 效果 滑動
- jQuery 效果 動畫
- jQuery 尺寸
- jQuery AJAX load() 方法
- jQuery 參考手冊 數(shù)據(jù)
- jQuery 參考手冊 核心
- jQuery 參考手冊 屬性
- jQuery 事件 delegate() 方法
- jQuery 事件 die() 方法
- jQuery 事件 pageX 屬性
- jQuery 事件 pageY 屬性
- jQuery 事件 result 屬性
- jQuery 事件 which 屬性
- jQuery 事件 keydown() 方法
- jQuery 事件 mouseleave() 方法
- jQuery 事件 mousemove() 方法
- jQuery 事件 resize() 方法
- jQuery 事件 triggerHandler() 方法