jquery 学习之一 对象访问


Posted in Javascript onNovember 23, 2010

each()

each(callback)

以每一个匹配的元素作为上下文来执行一个函数。
意味着,每次执行传递进来的函数时,函数中的this关键字都指向一个不同的DOM元素(每次都是一个不同的匹配元素)。

而且,在每次执行函数时,都会给函数传递一个表示作为执行环境的元素在匹配的元素集合中所处位置的数字值作为参数(从零开始的整形)。

返回 'false' 将停止循环 (就像在普通的循环中使用 'break')。返回 'true' 跳至下一个循环(就像在普通的循环中使用'continue')。

Execute a function within the context of every matched element.
This means that every time the passed-in function is executed (which is once for every element matched) the 'this' keyword points to the specific DOM element.

Additionally, the function, when executed, is passed a single argument representing the position of the element in the matched set (integer, zero-index).

Returning 'false' from within the each function completely stops the loop through all of the elements (this is like using a 'break' with a normal loop). Returning 'true' from within the loop skips to the next iteration (this is like using a 'continue' with a normal loop).

返回值

jQuery

参数

callback (Function) : 对于每个匹配的元素所要执行的函数

示例

迭代两个图像,并设置它们的 src 属性。注意:此处 this 指代的是 DOM 对象而非 jQuery 对象。

HTML 代码:

<img/><img/>

jQuery 代码:

$("img").each(function(i){
   this.src = "test" + i + ".jpg";
 });

结果:

[ <img src="test0.jpg" />, <img src="test1.jpg" /> ]

如果你想得到 jQuery对象,可以使用 $(this) 函数。

jQuery 代码:

$("img").each(function(){
  $(this).toggleClass("example");
});

你可以使用 'return' 来提前跳出 each() 循环。

HTML 代码:

<button>Change colors</button><span></span> <div></div> <div></div><div></div> <div></div><div id="stop">Stop here</div> <div></div><div></div><div></div>

jQuery 代码:

$("button").click(function () { $("div").each(function (index, domEle) {  // domEle == this  $(domEle).css("backgroundColor", "yellow");  if ($(this).is("#stop")) {  $("span").text("Stopped at div index #" + index);  return false;  } });});
--------------------------------------------------------------------------------------------------------------------------------

size()

jQuery 对象中元素的个数。
这个函数的返回值与 jQuery 对象的'length' 属性一致。
The number of elements in the jQuery object.
This returns the same number as the 'length' property of the jQuery object.

返回值

Number

示例

计算文档中所有图片数量

HTML 代码:

<img src="test1.jpg"/> <img src="test2.jpg"/>

jQuery 代码:

$("img").size();

结果:

2
-------------------------------------------------------------------------------------------------------------------------

length

jQuery 对象中元素的个数。
当前匹配的元素个数。 size 将返回相同的值。
The number of elements in the jQuery object.
The number of elements currently matched. The size function will return the same value.

返回值

Number

示例

计算文档中所有图片数量

HTML 代码:

<img src="test1.jpg"/> <img src="test2.jpg"/>

jQuery 代码:

$("img").length;

结果:

2
---------------------------------------------------------------------------------------------------------------------------------------

get()

取得所有匹配的 DOM 元素集合。

这是取得所有匹配元素的一种向后兼容的方式(不同于jQuery对象,而实际上是元素数组)。

 

如果你想要直接操作 DOM 对象而不是 jQuery 对象,这个函数非常有用。

Access all matched DOM elements.
This serves as a backwards-compatible way of accessing all matched elements (other than the jQuery object itself, which is, in fact, an array of elements). It is useful if you need to operate on the DOM elements themselves instead of using built-in jQuery functions.

返回值

Array<Element>

示例

选择文档中所有图像作为元素数组,并用数组内建的 reverse 方法将数组反向。

HTML 代码:

<img src="test1.jpg"/> <img src="test2.jpg"/>

jQuery 代码:

$("img").get().reverse();

结果:

[ <img src="test2.jpg"/> <img src="test1.jpg"/> ]
---------------------------------------------------------------------------------------------------------------------------------------

get(index)

取得其中一个匹配的元素。 num表示取得第几个匹配的元素。
这能够让你选择一个实际的DOM 元素并且对他直接操作,而不是通过 jQuery 函数。$(this).get(0)与$(this)[0]等价。
Access a single matched DOM element at a specified index in the matched set.
This allows you to extract the actual DOM element and operate on it directly without necessarily using jQuery functionality on it. This function called as $(this).get(0) is the equivalent of using square bracket notation on the jQuery object itself like $(this)[0].

返回值

Element

参数

index (Number) :取得第 index 个位置上的元素

示例

 

HTML 代码:

<img src="test1.jpg"/> <img src="test2.jpg"/>

jQuery 代码:

$("img").get(0);

结果:

[ <img src="test1.jpg"/> ]
---------------------------------------------------------------------------------------------------------------------------------------

index(subject)

搜索与参数表示的对象匹配的元素,并返回相应元素的索引值值。
如果找到了匹配的元素,从0开始返回;如果没有找到匹配的元素,返回-1。
Searches every matched element for the object and returns the index of the element, if found, starting with zero.
Returns -1 if the object wasn't found.

返回值

Number

参数

subject (Element) : 要搜索的对象

示例

返回ID值为foobar的元素的索引值值。

HTML 代码:

<div id="foobar"><b></b><span id="foo"></span></div>

jQuery 代码:

$("*").index($('#foobar')[0])

结果:

5
Javascript 相关文章推荐
javascript replace()正则替换实现代码
Feb 26 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
Dec 19 Javascript
jQuery源码解读之hasClass()方法分析
Feb 20 Javascript
深入理解js数组的sort排序
May 28 Javascript
jQuery实现指定区域外单击关闭指定层的方法【经典】
Jun 22 Javascript
javascript实现页面滚屏效果
Jan 17 Javascript
js实现模糊匹配功能
Feb 15 Javascript
Nginx 配置多站点vhost 的方法
Jan 07 Javascript
jQuery中图片展示插件highslide.js的简单dom
Apr 22 jQuery
VUE实现移动端列表筛选功能
Aug 23 Javascript
node+multer实现图片上传的示例代码
Feb 18 Javascript
详解微信小程序(Taro)手动埋点和自动埋点的实现
Mar 02 Javascript
boxy基于jquery的弹出层对话框插件扩展应用 弹出层选择器
Nov 21 #Javascript
IE6下出现JavaScript未结束的字符串常量错误的解决方法
Nov 21 #Javascript
基于jquery的滑动样例代码
Nov 20 #Javascript
jquery $.ajax()取xml数据的小问题解决方法
Nov 20 #Javascript
简单实用的js调试logger组件实现代码
Nov 20 #Javascript
扩展javascript的Date方法实现代码(prototype)
Nov 20 #Javascript
javascript AOP 实现ajax回调函数使用比较方便
Nov 20 #Javascript
You might like
如何使用PHP获取网络上文件
2006/10/09 PHP
php curl_init函数用法
2014/01/31 PHP
PHP中怎样防止SQL注入分析
2014/10/23 PHP
php判断一个数组是否为有序的方法
2015/03/27 PHP
PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
2016/04/11 PHP
各浏览器中querySelector和querySelectorAll的实现差异分析
2012/05/23 Javascript
js关闭父窗口时关闭子窗口
2013/04/01 Javascript
JS.elementGetStyle(element, style)应用示例
2013/09/24 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
2014/03/12 Javascript
JS实现模拟风力的雪花飘落效果
2015/05/13 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
jquery事件与绑定事件
2017/03/16 Javascript
详解angular ui-grid之过滤器设置
2017/06/07 Javascript
原生js调用json方法总结
2018/02/22 Javascript
Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案
2018/05/15 Javascript
web页面和微信小程序页面实现瀑布流效果
2018/09/26 Javascript
微信小程序时间戳转日期的详解
2019/04/30 Javascript
Vue + Elementui实现多标签页共存的方法
2019/06/12 Javascript
JS实现提示效果弹出及延迟隐藏的功能
2019/08/26 Javascript
Vue.set 全局操作简单示例
2019/09/19 Javascript
python操作xml文件示例
2014/04/07 Python
Python的垃圾回收机制深入分析
2014/07/16 Python
Python实现Linux下守护进程的编写方法
2014/08/22 Python
用python读写excel的方法
2014/11/18 Python
Python 处理图片像素点的实例
2019/01/08 Python
TensorFlow——Checkpoint为模型添加检查点的实例
2020/01/21 Python
html5使用canvas压缩图片的示例代码
2018/09/11 HTML / CSS
HTML5 Canvas实现放大镜效果示例
2020/03/25 HTML / CSS
美国在线旅行社:Crystal Travel
2018/09/11 全球购物
介绍一下你对SOA的认识
2016/04/24 面试题
职业生涯规划书基本格式
2014/01/06 职场文书
学生会招新策划书
2014/02/14 职场文书
五水共治一句话承诺
2014/05/30 职场文书
2014年小学辅导员工作总结
2014/12/23 职场文书
刑事上诉状(量刑过重)
2015/05/23 职场文书
vue3使用vue-router的完整步骤记录
2021/06/20 Vue.js