OSDN Git Service

Version 0.6.41, fix for Opera8 & NN7.2+.
[pettanr/clientJs.git] / 0.6.x / js / dom / 17_XDomNodeList.js
index b5c3ce0..d55d60b 100644 (file)
@@ -43,24 +43,21 @@ X.Dom.NodeList.prototype.each = function( func ){
 /* --------------------------------------\r
  *  Fuction Base, multi, getter, setter,\r
  */\r
-(function(){\r
+X.Dom.listenOnce( X.Dom.Event.DOM_PRE_INIT, function(){\r
        var target = X.Dom.NodeList.prototype,\r
                src    = X.Dom.Node.prototype,\r
                p, v, multi;\r
-\r
        for( p in src ){\r
                v = src[ p ];\r
-               if( typeof v === 'funciton' && !target[ p ] ){\r
+               if( X.Type.isFunction( v ) && !target[ p ] ){\r
                        target[ p ] = multi = new Function( [\r
-                               'var a=arguments,s=a.callee,f=s.f,t=this,i,l=t.length;',\r
-                               'if(0<l){',\r
-                                       'for(i=0;i<l;++i)if(i===l-1)return f.apply(t[i],a)else f.apply(t[i],a);',\r
-                               '}',\r
+                               'var a=arguments,f=X.Dom.Node.prototype.', p, ',t=this,i,l=t.length;',\r
+                               'if(l)',\r
+                                       'for(i=0;i<l;++i)if(i===l-1)return f.apply(t[i],a);else f.apply(t[i],a);',\r
                                'return f.apply(t,a)'\r
                        ].join( '' ) );\r
-                       multi.f = src[ p ];\r
                };\r
        };\r
-})();\r
+});\r
 \r
 \r