JQ中get()与eq()的区别

时间:2021-06-23 23:07:02
.eq()  :
  减少匹配元素的集合,根据index索引值,精确指定索引对象。
.get() :
  通过检索匹配jQuery对象得到对应的DOM元素。

  同样是返回元素,那么eq与get有什么区别呢?

  eq返回的是一个jQuery对象,get返回的是一个DOM对象。举个例子:

 $( "li" ).get( 0 ).css("color", "red"); //错误
$( "li" ).eq( 0 ).css("color", "red"); //正确

  get方法本质上是把jQuery对象转换成DOM对象,但是css属于jQuery构造器的,DOM是不存在这个方法的,如果需要用jQuery的方法,我们必须这样写:

 var li = $( "li" ).get( 0 );
$( li ).css("color", "red"); //用$包装

取出DOM对象li,然后用$再次包装,使之转变成jQuery对象,才能调用css方法,这样要分2步写太麻烦了,所以jQuery给我们提供了一个便捷方法eq()。