在jQuery中,not(this)是一個常見的選擇器。它的作用是找到除當前元素以外的其他元素。比如:
$('li').click(function() { $('li').not(this).css('color', 'red'); });
上面的代碼會給所有的li元素綁定點擊事件,當點擊任意一個li元素時,除當前元素以外的其他li元素的文字顏色都會變成紅色。
這個選擇器也可以和其他選擇器組合使用,比如:
$('li.active').not(this).css('color', 'red');
上面的代碼將只操作具有active類的li元素。
需要注意的是,not(this)中的this是指當前正在操作的元素。如果當前沒有任何元素被選擇,那么not(this)將會選擇所有元素。
同時,not(this)還可以接受一個函數作為參數。這個函數會被傳入每個元素的索引以及當前元素,如果函數返回true,當前元素就會被排除在外。比如:
$('li').not(function(index) { return index % 2 === 0; }).css('color', 'red');
上面的代碼將排除所有奇數索引的li元素,并將偶數索引的元素的文字顏色變成紅色。