OSDN Git Service

Fix the bug of X.NodeAnime.
[pettanr/clientJs.git] / 0.6.x / js / 02_dom / 08_XNodeSelector.js
index 727ac95..0868315 100644 (file)
@@ -196,7 +196,7 @@ function X_Node_Selector__parse( query, last ){
                                                not      = true;\r
                                                selector = 0;\r
                                                phase    = 0x0;\r
-                                               name     = null;                                        \r
+                                               name     = null;\r
                                        };\r
                                        //continue;\r
                                } else\r
@@ -253,7 +253,7 @@ function X_Node_Selector__parse( query, last ){
         */     \r
        function X_Node_find( queryString ){\r
                var HTML      = X_Node_html,\r
-                       scope     = this.constructor === X_NodeList && this.length ? this : [ this.constructor === Node ? this : X_Node_body ],\r
+                       scope     = this.constructor === X_NodeList && this.length ? this : [ this.constructor === Node || this[ 'instanceOf' ] && this[ 'instanceOf' ]( Node ) ? this : X_Node_body ],\r
                        parents   = scope, // 探索元の親要素 XNodeList の場合あり\r
                        // TODO { title : true,,, }\r
                        noLower   = 'title id name class for action archive background cite classid codebase data href longdesc profile src usemap',// + X_Dom_DTD_ATTR_VAL_IS_URI.join( ' ' ),\r
@@ -281,7 +281,7 @@ function X_Node_Selector__parse( query, last ){
                /*]@+debug*/\r
 \r
                // 文字列以外は空で返す\r
-               if( typeof queryString !== 'string' ) return ret;\r
+               if( !X_Type_isString( queryString ) ) return ret;\r
                \r
                xnodes = [];\r
                \r
@@ -293,7 +293,7 @@ function X_Node_Selector__parse( query, last ){
                        if( !parsed ){\r
                                parsed = X_Node_Selector__parse( queryString );\r
                                \r
-                               if( typeof parsed === 'number' ){\r
+                               if( X_Type_isNumber( parsed ) ){\r
                                        // error\r
                                        return [];\r
                                };\r
@@ -499,7 +499,7 @@ function X_Node_Selector__parse( query, last ){
                                        );\r
                                } else\r
                                // filterが関数の場合\r
-                               if( typeof filter === 'function' ){\r
+                               if( X_Type_isFunction( filter ) ){\r
                                        tmp = [];\r
                                        for( i = 0, n = -1; xnode = xnodes[ i ]; ++i ){\r
                                                if( ( !!filter( xnode ) ) ^ isNot ) tmp[ ++n ] = xnode; \r
@@ -611,6 +611,7 @@ function X_Node_Selector__parse( query, last ){
                var l = xnodes.length,\r
                        i = 0,\r
                        j, child, _xnodes;\r
+\r
                for( ; i < l; ++i ){\r
                        child = xnodes[ i ];\r
                        if( !child[ '_tag' ] ) continue;\r
@@ -635,7 +636,8 @@ function X_Node_Selector__parse( query, last ){
                var l      = xnodes.length,\r
                        i      = 0,\r
                        child, uid, _tag, _xnodes;\r
-               for( ; i < l; ++i ){\r
+\r
+               for( ; i < l; ++i ){ // for( ; child = xnodes[ ++i ]; )\r
                        child = xnodes[ i ];\r
                        uid   = child[ '_uid' ];\r
                        _tag  = child[ '_tag' ];\r