OSDN Git Service

Version 0.6.41, fix for Opera8 & NN7.2+.
[pettanr/clientJs.git] / 0.6.x / js / dom / 15_XDomStyle.js
index 019cb67..d67caa4 100644 (file)
@@ -26,13 +26,6 @@ X.Dom.Style = {
                COMBI             : 2 < 13
        },
        
-       SPECIAL_VALUES : {
-               AUTO : Number.POSITIVE_INFINITY,
-               FULL : X.Dom // something unigue value; 100%
-       },
-       
-       PropNo : {},
-       
        UNIT : {
                'px'   : 0,
                'em'   : 1,
@@ -71,12 +64,6 @@ X.Dom.Style = {
        },
        
        /* fontSize -> font-size */
-       /*
-       REG_LARGE : /[A-Z]/g,
-       uncamelize: function( str ){
-               return str.split( ' ' ).join( '' ).replace( X.Dom.Style.REG_LARGE, '-$&' ).toLowerCase();
-       }, */
-       
        CHAR_CODE_A : 'A'.charCodeAt( 0 ),
        
        _DICTIONARY_UNCAMELIZE : {},
@@ -1079,29 +1066,31 @@ X.Dom.Node.prototype.cssText = function( v ){
 };
 
 /*
- * ここでは HTMLElement のチャックは行わない!
+ * ここでは HTMLElement のチ1ェックは行わない!
+ * TODO
+ * body に css attr がセットされた場合には X.Dom.baseFontSize をクリア
  */
 
 X.Dom.Node.prototype._getCharSize =
        window.getComputedStyle ?
                (function(){
-                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        Node.root._updateTimerID && Node.root._startUpdate();
+                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        if( this._fontSize ) return this._fontSize;
                        return this._fontSize = parseFloat( getComputedStyle( this._rawNode, null ).fontSize );
                }) :
        document.defaultView && document.defaultView.getComputedStyle ?
                (function(){
-                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        Node.root._updateTimerID && Node.root._startUpdate();
+                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        if( this._fontSize ) return this._fontSize;
                        return this._fontSize = parseFloat( document.defaultView.getComputedStyle( this._rawNode, null ).fontSize );
                }) :
        X.UA.IE && 5.5 <= X.UA.IE ?
                (function(){
                        var font, vu, v, u, _v;
-                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        Node.root._updateTimerID && Node.root._startUpdate();
+                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        if( this._fontSize ) return this._fontSize;
                        
                        font = this._rawNode.currentStyle.fontSize;
@@ -1128,11 +1117,11 @@ X.Dom.Node.prototype._getCharSize =
                        };
                        return 0;
                }) :
-       document.getElementById ?
+       X.Dom.DOM_W3C ?
                (function(){
                        var elm, v;
-                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        Node.root._updateTimerID && Node.root._startUpdate();
+                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        if( this._fontSize ) return this._fontSize;
 
                        this._rawNode.appendChild( elm = document.createElement( 'span' ) );
@@ -1142,11 +1131,11 @@ X.Dom.Node.prototype._getCharSize =
                        this._rawNode.removeChild( elm );
                        return this._fontSize = v;
                }) :
-       X.UA.IE ?
+       X.Dom.DOM_IE4 ?
                (function(){
                        var font, vu, v, u, _v;
-                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        Node.root._updateTimerID && Node.root._startUpdate();
+                       if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
                        if( this._fontSize ) return this._fontSize;
                        
                        if( this._css && ( font = this._css.fontSize ) ){
@@ -1262,7 +1251,7 @@ X.Dom.listenOnce( X.Dom.Event.DOM_INIT, function(){
        
        for( i = list.length; i; ){
                unit = list[ --i ];
-               output[ unit ] = xnode.css( 'width', 100 + unit ).width() / 100;
+               output[ unit ] = xnode.css( 'width', 10 + unit ).width() / 10;
        };
 
        output = X.Dom.Style._FONT_SIZE_RATIO = {},
@@ -1274,9 +1263,6 @@ X.Dom.listenOnce( X.Dom.Event.DOM_INIT, function(){
                output[ size ] = xnode.css( 'fontSize', size ).height();// / base;
        };
        
-       // 以下解決、scroll 中に timer が無視される iOS の問題が原因(dom追加で起こったスクロール?)
-       // ipod touch 1st で必要なんですけど、、、
-       //xnode._rawNode.style.cssText = ''; 
-       xnode.cssText( '' ).empty(); //._startUpdate();
+       xnode.cssText( '' ).empty();
 } );