.not(selector)傳回:jQuery
說明:從符合元素集中刪除元素。
版本增加:1.0.not(選擇器)
選擇
#類型:選擇器或元素或陣列
包含選擇器表達式,DOM元素或與該集合相符的元素數組的字串。
版本增加:1.4。 (功能)
功能
類型:函數(整數索引,元素元素)=> 布林值
#用作集合中每個元素的測試的函數。它接受兩個參數,index它是jQuery集合中元素的索引element,它是DOM元素。在該函數內,this指的是當前的DOM元素。
版本增加:1.4不選(選擇)
選擇
類型:jQuery
一個現有的jQuery對象,以符合目前的元素組。
給定一個表示一組DOM元素.not()的jQuery對象,該方法從匹配元素的子集中構造一個新的jQuery對象。所提供的選擇器針對每個元素進行測試; 與選擇器不匹配的元素將包含在結果中。
考慮一個有簡單清單的頁面:
五
<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" );
這個呼叫的結果是項目2和4的紅色背景,因為它們與選擇器不符(回想一下:偶數:奇數使用0的索引)。
刪除特定元素
該.not()方法的第二個版本允許我們從匹配的集合中刪除元素,假設我們以前透過其他方法找到了這些元素。例如,假設我們的清單已將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 getElementById()函數取得第三個清單項,然後從jQuery物件中刪除它:
$( "li" ).not( document.getElementById( "notli" ) ) .css( "background-color", "red" );
此語句更改了項目1,2,4和5的顏色。我們可以使用更簡單的jQuery表達式完成相同的操作,但是,例如,當其他函式庫提供對純DOM節點的參考時,此技術將非常有用。
從jQuery 1.4開始,該.not()方法可以以相同的方式將函數作為其參數.filter()。功能傳回的元素true從過濾的集合中排除; 所有其他元素都包括在內。
注意:當CSS選擇器字串被傳遞時.not(),文字和註解節點將始終在過濾過程中從產生的jQuery物件中刪除。當提供特定節點或節點數組時,如果匹配過濾數組中的一個節點,文字或註釋節點將僅從jQuery物件中刪除。
範例:
新增邊框到不是綠色或藍色的div。
<!doctype html> <html> <head> <meta charset="utf-8"> <title>not demo</title> <style> div { width: 50px; height: 50px; margin: 10px; float: left; background: yellow; border: 2px solid white; } .green { background: #8f8; } .gray { background: #ccc; } #blueone { background: #99f; } </style> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <div></div> <div id="blueone"></div> <div></div> <div></div> <div></div> <div></div> <div></div> <script> $( "div" ).not( ".green, #blueone" ) .css( "border-color", "red" ); </script> </body> </html>
示範:
從所有段落的集合中刪除ID為「selected」的元素。
$( "p" ).not( $( "#selected" )[ 0 ] );
從所有段落的集合中刪除ID為「selected」的元素。
$( "p" ).not( "#selected" );
從所有段落的總集合中刪除與「div p.selected」相符的所有元素。
$( "p" ).not( $( "div p.selected" ) );
以上是jQuery.not(selector)的用法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!