在使用jQuery選擇器時,有時候我們需要選擇除了某些元素之外的所有元素,這時我們就需要用到j(luò)Query選擇器的取非功能。
作為一個簡單的例子,假設(shè)我們有如下的HTML代碼: <ul> <li class="selected">選項1</li> <li>選項2</li> <li>選項3</li> <li class="selected">選項4</li> </ul>
如果我們想選擇所有非.selected的li元素,那么我們可以使用not()方法:
$("li").not(".selected");
這樣我們就可以選擇到選項2和選項3這兩個li元素。
當(dāng)然,not()方法還可以接受多個參數(shù),用于選擇多個類名:
$("li").not(".selected, .other");
此時選擇的就是除了選項1和選項 4之外的所有l(wèi)i元素。
除了not()方法之外,我們還可以使用:not偽類實現(xiàn)選擇器的取非功能:
$("li:not(.selected)");
同樣的,:not偽類也可以接受多個參數(shù):
$("li:not(.selected, .other)");
需要注意的是,在使用:not偽類時需要注意CSS兼容性,如果需要兼容低版本的IE瀏覽器,建議使用not()方法。