\r
-\r
-\r
X.Dom = X.Class._override(\r
new X.EventDispatcher(),\r
{\r
readyState : -1,\r
- active : !!window.parent || !!document.activeElement, // frameに読み込まれた場合のieのerror回避\r
+ active : !!window.parent || !!document.activeElement, // parent は frameに読み込まれた場合のieのerror回避\r
_root : null,\r
\r
_lock : false,\r
* \r
* http://sssslide.com/www.slideshare.net/hiroakiwakamatsu/javascript-14514208\r
* 1. 傾き時の画面サイズ取得ー 対処方法の例\r
- * (1)ー• タイマーを使って、画面サイズ取得の タイミングを少しだけ遅延させる\r
+ * (1)ー? タイマーを使って、画面サイズ取得の タイミングを少しだけ遅延させる\r
* window.onorientationchange = function() { setTimeout(function() { alert("W: " + window.innerWidth + ", H: " + window.innerHeight); }, 200); }\r
* 横に傾けた時、正常に横向け時の 幅と高さが取得できている ただし、端末によってはうまく取得できな い場合がある(Galaxy S IIIとか・・・) 7 \r
* \r
\r
_init : function(){\r
var s, size, html, head, body;\r
- if( X.Dom.Event.DOM_PRE_INIT <= X.Dom.readyState ) return X.Callback.UN_LISTEN;\r
+ if( X.Dom.Event.DOM_PRE_INIT <= X.Dom.readyState ) return X_Callback_UN_LISTEN;\r
\r
console.log( 'X.Dom._init()' );\r
\r
html = Node._html =\r
document.documentElement ?\r
new Node( document.documentElement ) :\r
- X.Dom.DOM_W3C ?\r
+ X_UA_DOM.W3C ?\r
new Node( document.getElementsByTagName( 'html' )[ 0 ] ) :\r
- X.Dom.DOM_IE4 ?\r
+ X_UA_DOM.IE4 ?\r
new Node( document.all.tags( 'html' )[ 0 ] ) :\r
null;\r
\r
head = Node._head =\r
- X.Dom.DOM_W3C ?\r
+ X_UA_DOM.W3C ?\r
new Node( document.getElementsByTagName( 'head' )[ 0 ] ) :\r
- X.Dom.DOM_IE4 ?\r
+ X_UA_DOM.IE4 ?\r
new Node( document.all.tags( 'head' )[ 0 ] ) :\r
null;\r
\r
\r
X.Dom.listenOnce( X.Dom.Event.DOM_PRE_INIT, function(){\r
X.Dom.readyState = X.Dom.Event.DOM_BUILDER_COMPLETE;\r
- !X.Dom._useBuilder && X.Dom.asyncDispatch( 0, { type : X.Dom.Event.DOM_BUILDER_COMPLETE } );\r
+ !X_TEMP.X_Dom_useBuilder && X.Dom.asyncDispatch( 0, { type : X.Dom.Event.DOM_BUILDER_COMPLETE } );\r
} );\r
\r
X.Dom.listenOnce( X.Dom.Event.DOM_BUILDER_COMPLETE, function(){\r
.listen( 'blur', X.Dom );\r
};\r
\r
- return X.Callback.UN_LISTEN;\r
+ return X_Callback_UN_LISTEN;\r
},\r
\r
handleEvent : function( e ){\r
};\r
};\r
\r
-/*\r
- * http://d.hatena.ne.jp/t-uchima/20051003/p1\r
- * MacIEにはattachEventが一応あるけどwindow.attachEventとdocument.attachEventしかなく他の要素にはattachEventはない。\r
- */\r
-if( X.UA.MacIE ){\r
- X.Dom.DOM_W3C = true;\r
- X.Dom.EVENT_DOM0 = true;\r
-} else\r
-if( X.UA.IE4 ){ // ie4 & iemobi4\r
- X.Dom.DOM_IE4 = true;\r
- X.Dom.EVENT_DOM0 = true;\r
-} else\r
-if( document.getElementById ){\r
- X.Dom.DOM_W3C = true;\r
- if( document.addEventListener ){\r
- X.Dom.EVENT_W3C = true;\r
- } else\r
- if( document.attachEvent ){\r
- X.Dom.EVENT_IE = true;\r
- } else {\r
- X.Dom.EVENT_DOM0 = true;\r
- };\r
-} else\r
-if( document.all ){\r
- X.Dom.DOM_IE4 = true;\r
- X.Dom.EVENT_DOM0 = true;\r
-} else\r
-if( document.layers ){\r
- \r
-} else {\r
- \r
-};\r
-\r
-X.Dom.EVENT_POINTER = navigator.msPointerEnabled || navigator.pointerEnabled;\r
-X.Dom.EVENT_TOUCH = !X.Dom.EVENT_POINTER && window.ontouchstart !== undefined;\r
-\r
-\r
-\r
-X.Dom.CRLF = String.fromCharCode( 13 ) + String.fromCharCode( 10 );\r
- \r
-X.Dom.cleanupWhiteSpace = function( text ){\r
- var _ = ' ', __ = ' ', CRLF = X.Dom.CRLF;\r
- //text.indexOf( CRLF ) !== -1 && ( text = text.split( CRLF ).join( _ ) );\r
- text.indexOf( '\n\r' ) !== -1 && ( text = text.split( '\n\r' ).join( _ ) );\r
- text.indexOf( '\t' ) !== -1 && ( text = text.split( '\t' ).join( _ ) );\r
- text.indexOf( '\r' ) !== -1 && ( text = text.split( '\r' ).join( _ ) );\r
- text.indexOf( '\n' ) !== -1 && ( text = text.split( '\n' ).join( _ ) );\r
- text.indexOf( '\f' ) !== -1 && ( text = text.split( '\f' ).join( _ ) );\r
- text.indexOf( '\b' ) !== -1 && ( text = text.split( '\b' ).join( _ ) );\r
- while( text.indexOf( __ ) !== -1 ){\r
- text = text.split( __ ).join( _ );\r
- };\r
- return text;\r
-};\r
-\r
-X.Dom.whiteSpaceToTag = function( text ){\r
- if( text == null ) return '';\r
- return text.toString()\r
- //.split( '\r\n\r\n' ).join( '<br>' )\r
- //.split( '\n\r\n\r' ).join( '<br>' )\r
- //.split( '\r\n' ).join( '<br>' )\r
- .split( '\n\r' ).join( '<br>' )\r
- .split( '\r' ).join( '<br>' )\r
- .split( '\n' ).join( '<br>' )\r
- .split( '\t' ).join( ' ' )\r
- .split( '\f' ).join( '' )\r
- .split( '\b' ).join( '' );\r
-};\r
-\r
-X.Dom.chrReferanceTo = function( str ){\r
- if( str == null ) return '';\r
- return str.toString()\r
- .split( '&' ).join( '&' )\r
- .split( '<' ).join( '<' )\r
- .split( '>' ).join( '>' )\r
- .split( ' ' ).join( ' ' );\r
-};\r
-\r
-/*\r
- * original\r
- * AS3で相対パスを絶対パスに変換する\r
- * http://www.shin-go.net/motionlab/?p=449\r
- */\r
-X.Dom.baseURL = ( function( parts ){\r
- var last = 1 < parts.length && parts[ parts.length - 1 ];\r
- if( last !== false && ( last === '' || //末尾が/で終わるとき\r
- last.indexOf( '.' ) !== -1 ) ){//末尾がファイル名で終わる時\r
- \r
- --parts.length;\r
- };\r
- return parts.join( '/' );\r
-})( location.href.split( '?' )[ 0 ].split( '#' )[ 0 ].split( '/' ) );\r
-\r
-X.Dom.getAbsolutePath = function( path ){\r
- var s = '/',\r
- ss = '//',\r
- _ary, ary, i = 0;\r
-\r
- if( 'http:file:https:'.indexOf( path.substr( 0, 4 ) ) !== -1 ) return path;\r
- \r
- _ary = X.Dom.baseURL.split( ss );\r
- ary = _ary[ 1 ].split( s );\r
-\r
- if( path.charAt( 0 ) === s ) return [ _ary[ 0 ], ss, ary[ 0 ], path ].join( '' );\r
- \r
- if( path.substr( 0, 2 ) === './' ){\r
- path = path.substr( 2 );\r
- } else {\r
- while( path.substr( i, 3 ) === '../' ){\r
- --ary.length;\r
- i += 3;\r
- };\r
- if( i ) path = path.substr( i );\r
- };\r
- return [ _ary[ 0 ], ss, ary.join( s ), s, path ].join( '' );\r
-};\r
-\r
if( window[ 'orientation' ] !== undefined ){\r
X.Dom._orientationchange = function( e ){\r
X.Dom._orientationFlag = true;\r
};\r
};\r
\r
-\r
-console.log( 'X.Dom dom:w3c=' + X.Dom.DOM_W3C + ' ev:w3c=' + X.Dom.EVENT_W3C );\r
+console.log( 'X.Dom dom:w3c=' + X_UA_DOM.W3C + ' ev:w3c=' + X_UA_EVENT.W3C );\r