not.html
<div id="n1">
<div id="n2" class="n2">
<ul id="n3" data_id="12">
<li id="n4">item1</li>
<li id="n5" class="foo bar">item2</li>
<li id="n6" class="level-2">item3</li>
</ul>
</div>
<div id="n7" class="n7">
<input id="n8" name="username" type="text" value="1">
<input id="n9" name="orders" type="checkbox" checked="checked" value="1">
</div>
</div>
jquery:
/* $("li") 匹配n4、n5、n6这3个元素 */ //排除掉n6,剩下2个元素n4、n5 document.writeln( $("li").not( "#n6" ).length ); // 2 //排除掉带类名foo的元素,剩下n4、n6 document.writeln( $("li").not( $(".foo") ).length ); // 2 //排除掉所有带有class属性的元素,剩下n4 document.writeln( $("li").not( "[class]" ).length ); // 1 /* $("input") 匹配n8、n9这两个元素 */ //排除掉被选中的元素,剩下n8 document.writeln( $("input").not( ":checked" ).length ); // 1 var input = document.getElementsByTagName("input"); //排除掉所有input元素,返回空的jQuery对象 document.writeln( $("input").not( input ).length ); // 0 /* $("div") 匹配n1、n2、n7这3个元素 */ //排除掉id和class属性相等的元素,剩下n1 var $result = $("div").not( function(index, element){ // 函数内的this === element return this.id == this.className; } ); document.writeln( $result.length ); // 1