X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=0.6.x%2Fjs%2F02_dom%2F22_XTreeBuilder.js;h=b7455e338d254c4f20608913b33bf27f2d38b87f;hb=9e30a8480de03f0b36d2411a0ecb7f1d0f47b61f;hp=3ba6c19635661b488bd8b9b746e643e5cdb55825;hpb=dad4215398716c9913e80ec902c76db6762c1dce;p=pettanr%2FclientJs.git diff --git a/0.6.x/js/02_dom/22_XTreeBuilder.js b/0.6.x/js/02_dom/22_XTreeBuilder.js index 3ba6c19..b7455e3 100644 --- a/0.6.x/js/02_dom/22_XTreeBuilder.js +++ b/0.6.x/js/02_dom/22_XTreeBuilder.js @@ -407,8 +407,8 @@ X_TEMP.bindElementToXnode = break; }; alert( parent._tag + ' > ' + '"' + xnode._text + '" !== ' + tag + '\n' + - 'prev : ' + ( xnode.prevNode() && xnode.prevNode().html() ) + '\n' + - 'next : ' + ( xnode.nextNode() && xnode.nextNode().html() ) + '\n' + + 'prev : ' + ( xnode.prev() && xnode.prev().html() ) + '\n' + + 'next : ' + ( xnode.next() && xnode.next().html() ) + '\n' + 'html : ' + elm.outerHTML ); break; }; @@ -453,10 +453,13 @@ X_TEMP.bindElementToXnode = xnode.parent = parent; if( !xnode._tag ){ + xnode._flags |= X_Node_State.IN_TREE; + xnode._flags &= X_Node_BitMask_RESET_DIRTY; //alert( X_String_cleanupWhiteSpace( xnode._text ) ); if( !skipCleanup ){ if( !( text = xnode._text ) || ( text = X_String_cleanupWhiteSpace( text ) ) === ' ' ){ xnode.destroy(); + xnode = null; } else if( xtext ){ //alert( 'xtext ' + text.charCodeAt( 0 ) + ' : ' + text.length ); @@ -466,18 +469,15 @@ X_TEMP.bindElementToXnode = //alert( 'xnode ' + text.charCodeAt( 0 ) + ' : ' + text.length ); xnode.text( text ); }; - } else - if( xtext ){ - //alert( 'skip ' + text.charCodeAt( 0 ) + ' : ' + text.length ); - xtext.text( xtext._text + xnode._text ); - xnode.destroy(); + } else { + if( xtext ){ + //alert( 'skip ' + text.charCodeAt( 0 ) + ' : ' + text.length ); + xtext.text( xtext._text + xnode._text ); + xnode.destroy(); + }; }; - current.flag |= 4; current.xtext = xtext || xnode; - return; - }; - - if( !xnode._tag ){ + parent._flags |= X_Node_State.IE4_HAS_TEXTNODE; return; }; @@ -513,7 +513,7 @@ X_TEMP.bindElementToXnode = ( xnode._attrs = { type : 'text' } ) : xnode._attrs.type || ( xnode._attrs.type = 'text' ) ); - current.flag |= 3; + parent._flags |= X_Node_State.IE4_HAS_ELEMENT; current.xtext = null; if( tag === 'TEXTAREA' ){ @@ -539,9 +539,6 @@ X_TEMP.bindElementToXnode = if( !xnode._rawObject ){ alert( xnode._tag + ' ' + xnode._id + ' !== none...' ); }; - - // textNode がある - ( current.flag & 6 ) && ( parent._flags |= X_Node_State.IE4_TEXTNODE_FIX ); }); console.log( 'X.Dom.Builder' );