jquery中操作jQuery对象的eq和get的区别与使用方法

页面导航:首页 > 网络编程 > JavaScript > jquery中操作jQuery对象的eq和get的区别与使用方法

jquery中操作jQuery对象的eq和get的区别与使用方法

来源: 作者: 时间:2016-02-20 09:49 【

:eq() 选择器选取带有指定 index 20540;的元素。index 20540;从 0 开始,所有第一个元素的 index 20540;是 0(不是 1)。get(index) 取得其中一个匹配的元素。index表示取得第几个匹配的元

:eq() 选择器选取带有指定 index 值的元素。

index 值从 0 开始,所有第一个元素的 index 值是 0(不是 1)。


get(index) 取得其中一个匹配的元素。index表示取得第几个匹配的元素。

这能够让你选择一个实际的DOM 元素并且对他直接操作,而不是通过 jQuery 函数。$(this).get(0)与$(this)[0]等价。


下面我们通过一个简单的代码来说明下:

<script type="text/javascript" src="http://u.myxzy.com/jquery/jquery-1.7.1.js"></script> 
<script> 
$("document").ready(function(){ 
       alert($("li:eq(0)"));
       alert($("li").get(0));
}) 
</script> 
  • Li-1
  • Li-2

得到的结果是

返回结果分别为:[object Object]和[object HTMLLIElement]

可知,eq返回的是一个jquery对象,get返回的是一个 对象数组。


使用eq来获得第一个li标签的color值:

$("li").eq(0).css("color") //因为eq(num)返回的是个jq对象,所以可以用jq的方法css

使用get来获得第二个li标签的color值:

$("li").get(1).style.color //因为get(num)返回的是个html对象,所以要使用传统的HTML对象方法,jq对象此时就没用了。


当然,你也可以get(num)后把对象转为jq的对象再进行操作:

$($("li").get(1)).css("color")


由此我们知道,由eq返回的jquery对象,我们可以直接使用jquery的方法如.css(),.html()等,而由get返回的是html数组对象要使用传统的HTML对象方法或者转换成jquery对象后再操作 。

NOTE:可以实现同种效果,那么建议统一使用eq,不必再去费心理会他们之间的区别什么的了。


<script type="text/javascript" src="http://u.myxzy.com/jquery/jquery-1.7.1.js"></script>
<script>
$("document").ready(function(){
$("li:eq(0)").css("color",'red');
$("li").eq(1).css("color",'blue');
$("li").get(2).style.color='green';
$($("li").get(3)).css("color",'yellow');
})
</script>
  • li-1
  • li-2
  • li-3
  • li-4


Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<