OSDN Git Service

Version 0.6.70, bugfix.
[pettanr/clientJs.git] / 0.6.x / js / 01_dom / 17_XDomNodeList.js
index d55d60b..9bf5312 100644 (file)
@@ -31,11 +31,20 @@ X.Dom.NodeList = function( v ){
 };\r
 X.Dom.NodeList.prototype.length = 0;\r
 \r
-X.Dom.NodeList.prototype.each = function( func ){\r
+X.Dom.NodeList.prototype.each = function( func /* opt_args... */ ){\r
        var l = this.length,\r
-               i = 0;\r
-       for( i = 0, l = this.length; i < l; ++i ){\r
-               if( func.call( this[ i ], i ) === false ) break;\r
+               i = 0, args;\r
+\r
+       if( 1 < arguments.length ){\r
+               args = X.copyArray( arguments );\r
+               for( ; i < l; ++i ){\r
+                       args[ 0 ] = i;\r
+                       if( func.apply( this[ i ], args ) === false ) break;\r
+               };\r
+       } else {\r
+               for( ; i < l; ++i ){\r
+                       if( func.call( this[ i ], i ) === false ) break;\r
+               };\r
        };\r
        return this;\r
 };\r