jquery中操作jQuery对象的eq和get的区别与使用方法--操作前台显示之利器

: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>
<ul>
  <li>Li-1</li>
  <li>Li-2</li>
</ul>

得到的结果是

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

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

使用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>
<ul>
<li>li-1</li>
<li>li-2</li>
<li>li-3</li>
<li>li-4</li>
</ul>

时间: 2024-07-31 15:11:24

jquery中操作jQuery对象的eq和get的区别与使用方法--操作前台显示之利器的相关文章

jquery中 $ 和 jQuery 及 $() 的区别

用过jquery的人都知道,jquery有两种用法,一种是$,还有一种是jQuery,那么这两种方式在使用上有什么区别呢? 答案是这两种用法没什么区别,只是别名而已,用$要比jQuery简短一些.方便一些,另外其他的前端框架也都用到$符号,如果想不跟其他框架冲突,建议使用jQuery方式. 还有种方法就是换一个新的缩写: 1.调用jquery的noConflict函数 JQuery.noConflict();//让jquery放弃对$的使用权,交给其他js框架使用 2.声明新的缩写 var $j

Jquery中的append()和prepend(),after()和before()的区别

Jquery中的append()和preappend(),after()和before()的区别 append()和prepend() 假设 <div class='a'> //<---you want div c to append in this <div class='b'>b</div> </div> 使用 $('.a').append($('.c')); 则会这样: <div class='a'> //<---you wan

Servlet中的request对象、重定向和转发的区别(6)

1.这里所说的request对象指的是HttpServletRequest对象,它代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,我们通过request对象调用里面的方法,可以获得客户发送给web服务器的各种信息. 2.request的常用方法 (1)获得客户机信息     getRequestURL方法返回客户端发出请求时的完整URL.(                                例如:url:http://localh

jQuery中的deferred对象的使用(一)

在jquery1.5之后的版本中,加入了一个deferred对象,也就是延迟对象,用来处理未来某一时间点发生的回调函数.同时,还改写了ajax方法,现在的ajax方法返回的是一个deferred对象. 那就来看看deferred对象的用法. 1.ajax的链式回调 // ajax方法返回的是一个deferred对象,可以直接使用链式写法 $.ajax('test.json').done(function(resp){ // done 相当于success回调,其中默认的参数为success回调的

jquery中each遍历对象和数组

jquery中each可用于遍历对象和数组,如需退出each循环可使回调函数返回false 1.$().each(),回调函数拥有两个参数: 第一个为对象的成员或数组的索引,第二个为对应变量或内容.如需退出each循环可使回调函数返回false 例子: 现有如下两个select 计划类别: <select id="PLANTYPE"> <option value="0">-所有-</option> <option value

jquery中 $ 和 jQuery 及 $() 的差别

用过jquery的人都知道,jquery有两种使用方法,一种是$,另一种是jQuery,那么这两种方式在使用上有什么差别呢? 答案是这两种使用方法没什么差别,仅仅是别名而已,用$要比jQuery简短一些.方便一些,另外其它的前端框架也都用到$符号,假设想不跟其它框架冲突,建议使用jQuery方式. 还有种方法就是换一个新的缩写: 1.调用jquery的noConflict函数 JQuery.noConflict();//让jquery放弃对$的使用权,交给其它js框架使用 2.声明新的缩写 va

JQuery中根据属性或属性值获得元素(6种情况获取方法)

根据属性获得元素 1.比如要获取页面p标签中属性有id的元素 $("p[id]").css("color","red"); 根据属性值获得元素 1.$.在jQuery 中$("<span>"),这个语法等同于$(document.createElement("span")) ,这是一种用法,在选择元素的时候还会这样子的用:[attribute$=value],匹配给定的属性是以某些值结尾的元素.

jquery中(function($){...})(jQuery)是什么

调用函数 时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:(function(arg){...})(param)而(function($){...}) (jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery其实就等于var fn = function($){....};fn(jQuery);其实可以这么理解,不过要注意的是fn是不存在的那个函数直接定义,然后就运行了.就压缩成下面的样子了(function($){...})(

Jquery中html()、text()、val()的使用和区别

jquery中获取对象内容的方法主要有3种,分别是html().text().val(). obj.html():获取对象包裹的所有html内容,相当于innerHTML. obj.text():获取对象中所有的文本内容,不包含html标签.一般用于div.p.span等没有value属性的元素,相当于innerText. obj.val():获取对象的value的值.获取的是选择对象的第一个元素的value值.当然该属性并不局限于只有value的元素,对于表单元素都适合. 例如: $("#so