OSDN Git Service

Version 0.6.179, fix X.Audio & X.AudioSprite.
[pettanr/clientJs.git] / 0.6.x / js / 02_dom / 22_XTreeBuilder.js
index 868261e..530b094 100644 (file)
@@ -41,12 +41,12 @@ if( X_UA[ 'MacIE' ] ){
                                e.appendChild( node );\r
                                parent.removeChild( e );\r
                                node.parentNode = null;\r
-                               document.body.appendChild( node );\r
+                               X_elmBody.appendChild( node );\r
                                parent.replaceChild( document.createComment( '' ), node ); */\r
-                               document.body.appendChild( node );\r
+                               X_elmBody.appendChild( node );\r
                                return;\r
                                /*\r
-                               if( parent.parentNode !== document.body ){\r
+                               if( parent.parentNode !== X_elmBody ){\r
                                        var clone = parent.cloneNode( true );\r
                                        for( var i = 0, l = parent.childNodes.length; i < l; ++i ){\r
                                                if( parent.childNodes[ i ] !== node ){\r
@@ -112,7 +112,7 @@ X_TEMP._onPreInit =
        X_UA_DOM.W3C ?\r
 (function(){\r
        var r    = X_Node_body,\r
-               body = r[ '_rawObject' ],\r
+               body = X_elmBody,\r
                copy, i, l, node, html,\r
                elmProgress;\r
        \r
@@ -124,7 +124,7 @@ X_TEMP._onPreInit =
        // textarea の内容を控えて、消す。xnode tree 構築後に復帰。でないと、html パースでこける\r
        //X_UA[ 'MacIE' ] && alert( body.innerHTML );\r
        // cleanup tree \r
-       function cleanUpTree( elm, skip, head ){\r
+       function cleanUpTree( elm, skip ){\r
                var nodes      = X_Array_copy( elm.childNodes ),\r
                        i          = 0,\r
                        l          = nodes.length,\r
@@ -135,8 +135,7 @@ X_TEMP._onPreInit =
                                case 1 :\r
                                        tag = node.tagName.toUpperCase();\r
                                        if( X_Dom_DTD_MOVE_TO_HEAD[ tag ] ){\r
-                                               head = head || document.getElementsByTagName( 'head' )[ 0 ];\r
-                                               head.appendChild( node );\r
+                                               X_elmHead.appendChild( node );\r
                                                continue;\r
                                        } else\r
                                        if( X_TEMP._isCleanupTarget( node ) ){\r
@@ -144,7 +143,7 @@ X_TEMP._onPreInit =
                                                continue;\r
                                        } else {\r
                                                // pre タグ以下はスペースの置換は行わない\r
-                                               node.childNodes && node.childNodes.length && cleanUpTree( node, skip || X_Dom_DTD_SKIP_CLEANUP_TAGS[ tag ], head );\r
+                                               node.childNodes && node.childNodes.length && cleanUpTree( node, skip || X_Dom_DTD_SKIP_CLEANUP_TAGS[ tag ] );\r
                                        };\r
                                        textNode = null;\r
                                        break;\r
@@ -198,8 +197,6 @@ X_TEMP._onPreInit =
        elmProgress.style.cssText = 'position:absolute;top:0;left:0;z-index:9999;width:0;height:0.5em;background:#00f;overflow:hidden;';\r
        elmProgress.setAttribute( 'style', 'position:absolute;top:0;left:0;z-index:9999;width:0;height:0.5em;background:#00f;overflow:hidden;' );\r
        \r
-       X_TEMP._body = body;\r
-       \r
        X_HTMLParser_asyncParse( html, true )\r
                [ 'listen' ]( X_EVENT_PROGRESS, X_TEMP._handleEvent )\r
                [ 'listenOnce' ]( X_EVENT_SUCCESS, X_TEMP._handleEvent );\r
@@ -224,8 +221,6 @@ X_TEMP._onPreInit =
        body.insertAdjacentHTML( 'BeforeEnd', '<div id="' + elmProgress + '" style="position:absolute;top:0;left:0;z-index:9999;width:0;height:0.5em;background:#00f;overflow:hidden;"></div>' );\r
        X_TEMP.elmProgress = document.all[ elmProgress ];\r
        \r
-       X_TEMP._body = body;\r
-       \r
        X_HTMLParser_asyncParse( html, true )\r
                [ 'listen' ]( X_EVENT_PROGRESS, X_TEMP._handleEvent )\r
                [ 'listenOnce' ]( X_EVENT_SUCCESS, X_TEMP._handleEvent );\r
@@ -247,10 +242,9 @@ X_TEMP._handleEvent = function( e ){
                        xnodes.push.apply( xnodes, e.xnodes );\r
                        elmProgress.style.width = '100%';\r
                        \r
-                       X_TEMP.asyncCreateTree( X_Node_body, X_TEMP._body.childNodes || X_TEMP._body.children, elmProgress );\r
+                       X_TEMP.asyncCreateTree( X_Node_body, X_elmBody.childNodes || X_elmBody.children, elmProgress );\r
                        \r
                        delete X_TEMP._onPreInit;\r
-                       delete X_TEMP._body;\r
                        delete X_TEMP.elmProgress;\r
                        break;\r
        };\r
@@ -298,7 +292,7 @@ X_TEMP.asyncCreateTree = function( parent, elems, elmProgress, async ){
                                        continue;\r
                                };\r
                                \r
-                               if( startTime + 16 <= X_Timer_now() ){\r
+                               if( startTime + X_Timer_INTERVAL_TIME <= X_Timer_now() ){\r
                                        current.i = i;\r
                                        if( async ){\r
                                                async.current = i < l && current;\r