jQuery.each( array, callback )Returns:Object
Description:A generic iterator function, which can be used to seamlessly iterate over both objects and arrays. Arrays and array-like objects with a length property (such as a function's arguments
object) are iterated by numeric index, from 0 to length-1. Other objects are iterated via their named properties.
The$.each()
function is not the same
as$(selector).each(), which is used to iterate, exclusively, over a jQuery object. The$.each()
function
can be used to iterate over any collection, whether it is an object or an array. In the case of an array, the callback is passed an array index and a corresponding array value each time. (The value can also be accessed through thethis
keyword,
but Javascript will always wrap thethis
value as anObject
even
if it is a simple string or number value.) The method returns its first argument, the object that was iterated.
Note:The$.each()
function
internally retrieves and uses thelength
property of the passed collection. So, if
the collection has a property calledlength
— e.g.{bar:
'foo', length: 10}
— the function might not work as expected.
1
2
3
|
$.each([ 52, 97 ], function( index, value ) {
alert( index + ": " + value );
|
This produces two messages:
0: 52
1: 97
If an object is used as the collection, the callback is passed a key-value pair each time:
1
2
3
4
5
6
7
|
"flammable": "inflammable",
$.each( obj, function( key, value ) {
alert( key + ": " + value );
|
Once again, this produces two messages:
flammable: inflammable
duh: no duh
We can break the$.each()
loop at a particular
iteration by making the callback function returnfalse
. Returningnon-falseis
the same as acontinue
statement in a for loop; it will skip immediately to the next
iteration.
Examples:
Example:Iterates through the array displaying each number as both a word and numeral
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
<title>jQuery.each demo</title>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
var arr = [ "one", "two", "three", "four", "five" ];
var obj = { one: 1, two: 2, three: 3, four: 4, five: 5 };
jQuery.each( arr, function( i, val ) {
$( "#" + val ).text( "Mine is " + val + "." );
return ( val !== "three" );
jQuery.each( obj, function( i, val ) {
$( "#" + i ).append( document.createTextNode( " - " + val ) );
|
Demo:
Example:Iterates over items in an array, accessing both the current item and its index.
1
2
3
|
$.each( [ "a", "b", "c" ], function( i, l ){
alert( "Index #" + i + ": " + l );
|
Example:Iterates over the properties in an object, accessing both the current item and its key.
1
2
3
|
$.each({ name: "John", lang: "JS" }, function( k, v ) {
alert( "Key: " + k + ", Value: " + v );
|
.each()
.each( function )Returns:jQuery
Description:Iterate over a jQuery object, executing a function for each matched element.
The.each()
method is designed to make
DOM looping constructs concise and less error-prone. When called it iterates over the DOM elements that are part of the jQuery object. Each time the callback runs, it is passed the current loop iteration, beginning from 0. More importantly, the callback is
fired in the context of the current DOM element, so the keywordthis
refers to the element.
Suppose you have a simple unordered list on the page:
You can select the list items and iterate across them:
1
2
3
|
$( "li" ).each(function( index ) {
console.log( index + ": " + $( this ).text() );
|
A message is thus logged for each item in the list:
0: foo
1: bar
You can stop the loop from within the callback function by returningfalse
.
Note: most jQuery methods that return a jQuery object also loop through the set of elements in the jQuery collection — a process known asimplicit iteration. When this
occurs, it is often unnecessary toexplicitlyiterate with the.each()
method:
1
2
3
4
5
6
7
|
$( "li" ).each(function() {
$( this ).addClass( "foo" );
$( "li" ).addClass( "bar" );
|
Examples:
Example:Iterate over three divs and sets their color property.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
<div>to iterate through</div>
$( document.body ).click(function() {
$( "div" ).each(function( i ) {
if ( this.style.color !== "blue" ) {
this.style.color = "blue";
|
Demo:
Example:To access a jQuery object instead of the regular DOM element, use$(
this )
. For example:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
text-decoration: underline;
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
To do list: <span>(click here to change)</span>
$( "span" ).click(function() {
$( "li" ).each(function() {
$( this ).toggleClass( "example" );
|
Demo:
Example:Usereturn
false
to break out of each() loops early.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
<button>Change colors</button>
<div id="stop">Stop here</div>
$( "button" ).click(function() {
$( "div" ).each(function( index, element ) {
$( element ).css( "backgroundColor", "yellow" );
if ( $( this ).is( "#stop" ) ) {
$( "span" ).text( "Stopped at div index #" + index );
|
Demo:
分享到:
相关推荐
本文实例讲述了jQuery源码分析之jQuery.fn.each与jQuery.each用法。分享给大家供大家参考。具体分析如下: 先上例子,下面代码的作用是:对每个选中的div元素,都给它们添加一个red类 复制代码 代码如下:$(‘div’)....
jQuery.each-v1.10.2源码
jquery.each 方法 方法一 $("img").each(function(i,elem){ // i 下标 从零开始, // elem == this // $(elem).toggleClass("example"); $(this).toggleClass("example"); }); 方法二 $.each([1,2,3,4],...
jQuery.each方法是jQuery的核心工具方法之一,通用例遍方法,可用于例遍对象和数组。不同于例遍 jQuery 对象的 $().each() 方法,此方法可用于例遍任何对象。通常需要两个参数 object:需要例遍的对象或数组。 ...
$.each()遍历数组或对象的具体用法
jQuery和jQuery对象都实 现了该方法,对于jQuery对象,只是把each方法简单的进行了委托:把jQuery对象作为第一个参数传递给jQuery的each方法.换句话 说:jQuery提供的each方法是对参数一提供的对象的中所有的子元素...
Each topic is covered clearly and concisely, and is packed with the details you'll need to learn to be truly effective. The most important features are given a no-nonsense, in-depth treatment, and ...
Over the course of this book we'll look at each of the existing components that make up the library. We will also be looking at their configuration options and trying out their methods in order to ...
使用jquery,动态生成table表格,使用jquery.pagination.js来实现分页栏
(i是索引,n是内容) 代码如下: $.each( [0,1,2], function(i, n){ alert( “Item #” + i + “: ” + n ); }); 例遍对象,同时使用成员名称和变量内容。(i是成员名称,n是变量内容) 代码如下: $.each( {...
声明了一个JSON字符串直接遍历,在Chrome控制台下面报错,解决方法是将JSON字符串转换为JavaScript对象
$().each() 对于这个方法,在dom处理上用的比较多,如果一个html页面上面有多个checkbox,这时用$().each来处理checkbox是比较不错的; $("input[type='checkbox']").each(function...script src="jquery-1.9.0.min.js
用JavaScript原生封装的一个jQuery库,可供大家学习底层封装原理。有addClass 添加类,removeClass 删除类,toggleClass 切换类,each 遍历函数,show() 显示, hide() 隐藏,toggle() 切换, html() 获取或设置html...
NULL 博文链接:https://likebin.iteye.com/blog/867876
$(selector).each:该方法用于遍历Jquery对象 语法:$.each(obj,callback,args) ①遍历数组 var arry = [“a”,”b”,”c”,”d”,…]; $.each(arry,function(index,value){…}) 回调函数中:index 代表数组的索引 ...
jQuery中$.each()函数的用法引申实例_.docx
$(selector).each(function(index,element)) 这个函数和之前项目里面用到的遍历数据的函数不是同一个呀(项目里面用到的函 数:$.each(dataresource,function(index,element))),于是,就好好研究了下,果然在JS...