OSDN Git Service
(root)
/
pettanr
/
clientJs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Version 0.6.133, fix for closure compiler - ADVANCED_OPTIMIZATIONS
[pettanr/clientJs.git]
/
0.6.x
/
js
/
02_dom
/
06_XNodeCSS.js
diff --git
a/0.6.x/js/02_dom/06_XNodeCSS.js
b/0.6.x/js/02_dom/06_XNodeCSS.js
index
3f9f250
..
6a87798
100644
(file)
--- a/
0.6.x/js/02_dom/06_XNodeCSS.js
+++ b/
0.6.x/js/02_dom/06_XNodeCSS.js
@@
-86,7
+86,7
@@
_GRNERAL
*/
X_Node_CSS_VENDER_PREFIX = {},
*/
X_Node_CSS_VENDER_PREFIX = {},
-X_Node_CSS__CLIP_SEPARATOR = X_UA
.IE
< 8 ? ' ' : ',',
+X_Node_CSS__CLIP_SEPARATOR = X_UA
[ 'IE' ]
< 8 ? ' ' : ',',
X_Node_CSS__UNIT_RATIO = {},
X_Node_CSS__FONT_SIZE_RATIO = {},
X_Node_CSS__UNIT_RATIO = {},
X_Node_CSS__FONT_SIZE_RATIO = {},
@@
-189,12
+189,12
@@
X_Node_CSS_COLOR = {
function X_Node_CSS_parseColor( x ){
var rgb, r, g, b;
function X_Node_CSS_parseColor( x ){
var rgb, r, g, b;
- if( X
.Type.
isNumber( x ) ){
+ if( X
_Type_
isNumber( x ) ){
return ( 0x0 <= x && x <= 0xFFFFFF ) ? x : undefined;
} else
return ( 0x0 <= x && x <= 0xFFFFFF ) ? x : undefined;
} else
- if( !X
.Type.
isString( x ) ) return;
+ if( !X
_Type_
isString( x ) ) return;
- if( X
.Type.
isNumber( rgb = X_Node_CSS_COLOR[ x.toUpperCase() ] ) && 0x0 <= rgb && rgb <= 0xFFFFFF ){
+ if( X
_Type_
isNumber( rgb = X_Node_CSS_COLOR[ x.toUpperCase() ] ) && 0x0 <= rgb && rgb <= 0xFFFFFF ){
return rgb;
} else
if( x.charAt( 0 ) === '#' ){
return rgb;
} else
if( x.charAt( 0 ) === '#' ){
@@
-244,7
+244,7
@@
function X_Node_CSS_parseColor( x ){
return isFinite( r + b + g ) ? ( r << 16 ) + ( g << 8 ) + b : undefined;
};
return isFinite( r + b + g ) ? ( r << 16 ) + ( g << 8 ) + b : undefined;
};
-function X_Node_CSS_objToCssText( that ){
+function X_Node_CSS_objToCssText( that
, skipFilter
){
var obj = that._css,
plain = X_EMPTY_OBJECT,
css = [],
var obj = that._css,
plain = X_EMPTY_OBJECT,
css = [],
@@
-254,7
+254,7
@@
function X_Node_CSS_objToCssText( that ){
that._flags &= ~X_Node_State.OLD_CSSTEXT;
if( !obj ){ // Opera7.5 未満?
that._flags &= ~X_Node_State.OLD_CSSTEXT;
if( !obj ){ // Opera7.5 未満?
- delete that._cssText;
+65
+ delete that._cssText;
return '';
};
return '';
};
@@
-276,10
+276,22
@@
function X_Node_CSS_objToCssText( that ){
};
};
};
};
- filterFix && ( css[ ++n ] = 'filter:' + X_Node_CSS_objToIEFilterText( that, filterFix ) );
+ if( filterFix ){
+ v = X_Node_CSS_objToIEFilterText( that, filterFix );
+ if( v ) css[ ++n ] = 'filter:' + v;
+ skipFilter = skipFilter && v;
+ } else {
+ skipFilter = false;
+ };
if( 0 <= n ){
if( 0 <= n ){
- return that._cssText = css.join( ';' );
+ // cssText には完全なものを控えるが、戻すのは filter を抜いたもの
+ that._cssText = css.join( ';' );
+ if( skipFilter ){
+ --css.length;
+ return css.join( ';' );
+ };
+ return that._cssText;
};
delete that._cssText;
return '';
};
delete that._cssText;
return '';
@@
-287,13
+299,14
@@
function X_Node_CSS_objToCssText( that ){
var
X_Node_CSS_FILTER_FIX_PROPS =
var
X_Node_CSS_FILTER_FIX_PROPS =
- X_UA
.ActiveX && X_UA.IE < 9 && !X_UA.MacIE
?
+ X_UA
[ 'ActiveX' ] && X_UA[ 'IE' ] < 9 && !X_UA[ 'MacIE' ]
?
{
opacity : 2,
boxShadow : 3,
{
opacity : 2,
boxShadow : 3,
- textShadow : 4
+ textShadow : 4,
+ transform : 5
} :
} :
- X_UA
.ActiveX && X_UA.IE9
? // == 9
+ X_UA
[ 'ActiveX' ] && X_UA[ 'IE9' ]
? // == 9
{
textShadow : 4
} :
{
textShadow : 4
} :
@@
-392,8
+405,11
@@
function X_Node_CSS_objToIEFilterText( that, opt_css ){
//glow(Color=yellow,Strength=10);
//どうやらCSSのbackgroundプロパティと同時に使えないようです。 s
break;
//glow(Color=yellow,Strength=10);
//どうやらCSSのbackgroundプロパティと同時に使えないようです。 s
break;
- case
5
: //'backgroundImage' :
+ case
6
: //'backgroundImage' :
//
//
+
+ case 5 : // transform scale, matrix
+
};
};
return filters.join( ' ' );
};
};
return filters.join( ' ' );
@@
-436,7
+452,7
@@
X_Node_CSS_UNIT = {
*/
function X_Node_CSS__splitValueAndUnit( v ){
var num, _num, u;
*/
function X_Node_CSS__splitValueAndUnit( v ){
var num, _num, u;
- if( X
.Type.
isNumber( v ) ) return [ v || 0, '' ];
+ if( X
_Type_
isNumber( v ) ) return [ v || 0, '' ];
num = parseFloat( v );
if( num !== num ) return [ 0, '' ];
_num = '' + num;
num = parseFloat( v );
if( num !== num ) return [ 0, '' ];
_num = '' + num;
@@
-493,9
+509,9
@@
Node.prototype.css = function( nameOrObj /* orUnitID, valuOrUnitOrName */ ){
var args = arguments,
css = this._css,
p, name, v, plain, camelize, flags;
var args = arguments,
css = this._css,
p, name, v, plain, camelize, flags;
- if( !this._tag ) return this;
+ if( !this._tag
|| X_Dom_DTD_MOVE_TO_HEAD[ this._tag ] || this._tag === 'SCRIPT'
) return this;
// setter:object
// setter:object
- if( X
.Type.
isObject( nameOrObj ) ){
+ if( X
_Type_
isObject( nameOrObj ) ){
if( !css ) css = this._css = {};
plain = X_EMPTY_OBJECT;
camelize = X_Node_CSS_camelize;
if( !css ) css = this._css = {};
plain = X_EMPTY_OBJECT;
camelize = X_Node_CSS_camelize;
@@
-507,7
+523,7
@@
Node.prototype.css = function( nameOrObj /* orUnitID, valuOrUnitOrName */ ){
if( css[ name ] === v ) continue;
flags = X_Node_CSS_setStyle( css, flags, name, v );
};
if( css[ name ] === v ) continue;
flags = X_Node_CSS_setStyle( css, flags, name, v );
};
- this._flags
= flags |
X_Node_State.DIRTY_CSS | X_Node_State.OLD_CSSTEXT;
+ this._flags
|=
X_Node_State.DIRTY_CSS | X_Node_State.OLD_CSSTEXT;
this._flags & X_Node_State.IN_TREE && X_Node_reserveUpdate();
delete this._cssText;
return this;
this._flags & X_Node_State.IN_TREE && X_Node_reserveUpdate();
delete this._cssText;
return this;
@@
-555,7
+571,8
@@
function X_Node_CSS_setStyle( css, flags, name, newValue ){
case 'opacity' :
// すでに visibility:hidden で invisible
if( flags & X_Node_State.STYLE_IS_INVISIBLE && css[ 'visibility' ] === 'hidden' ) return flags;
case 'opacity' :
// すでに visibility:hidden で invisible
if( flags & X_Node_State.STYLE_IS_INVISIBLE && css[ 'visibility' ] === 'hidden' ) return flags;
- newValue == 0 ? ( flags |= X_Node_State.STYLE_IS_INVISIBLE ) : ( flags &= ~X_Node_State.STYLE_IS_INVISIBLE );
+ newValue == 0 ? // 0 or "0"
+ ( flags |= X_Node_State.STYLE_IS_INVISIBLE ) : ( flags &= ~X_Node_State.STYLE_IS_INVISIBLE );
return flags;
case 'overflow' :
return flags;
case 'overflow' :
@@
-604,16
+621,15
@@
Node.prototype.cssText = function( v ){
if( v === '' ){
delete this._css;
delete this._cssText;
if( v === '' ){
delete this._css;
delete this._cssText;
- this._flags |= X_Node_State.DIRTY_CSS;
- this._flags &= ~X_Node_State.OLD_CSSTEXT | ~X_Node_State.DIRTY_IE_FILTER;
- this._flags &= X_Node_BITMASK_RESET_STYLE;
+ this._flags |= X_Node_State.DIRTY_CSS | X_Node_State.DIRTY_IE_FILTER;
+ this._flags &= ~X_Node_State.OLD_CSSTEXT;
this._flags & X_Node_State.IN_TREE && X_Node_reserveUpdate();
return this;
} else
this._flags & X_Node_State.IN_TREE && X_Node_reserveUpdate();
return this;
} else
- if( X
.Type.
isString( v ) ){
+ if( X
_Type_
isString( v ) ){
delete this._css;
obj = {};
delete this._css;
obj = {};
- v = v.split( ';' ); // TODO content ";" などにも対応
+ v = v.split( ';' ); // TODO content ";" などにも対応
<- 不要 :before :after 疑似要素には触らない
for( i = 0, l = v.length; i < l; ++i ){
attr = v[ i ].split( ':' );
( name = attr[ 0 ] ) && ( obj[ name ] = attr[ 1 ] || true );
for( i = 0, l = v.length; i < l; ++i ){
attr = v[ i ].split( ':' );
( name = attr[ 0 ] ) && ( obj[ name ] = attr[ 1 ] || true );
@@
-643,7
+659,7
@@
X_Node_CSS_getCharSize =
return that._fontSize = parseFloat( X_node_CSS_getComputedStyle( that._rawObject, null ).fontSize );
}) :
return that._fontSize = parseFloat( X_node_CSS_getComputedStyle( that._rawObject, null ).fontSize );
}) :
- 5
.5 <= X_UA.IE
?
+ 5
<= X_UA[ 'IE' ]
?
(function( that ){
var font, vu, v, u, _v;
X_Node_updateTimerID && X_Node_startUpdate();
(function( that ){
var font, vu, v, u, _v;
X_Node_updateTimerID && X_Node_startUpdate();
@@
-734,7
+750,7
@@
var X_Node_CSS_Support = {},
X_Node_CSS_SPECIAL_FIX_PROP = {
X_Node_CSS_SPECIAL_FIX_PROP = {
- transitionDuration : X_UA
.Android && !X_UA.Chrome
&& function( v ){ // bad Android
+ transitionDuration : X_UA
[ 'Android' ] && !X_UA[ 'Chrome' ]
&& function( v ){ // bad Android
return parseFloat( v ) === 0 ? '0.001s' : v;
}
return parseFloat( v ) === 0 ? '0.001s' : v;
}
@@
-763,7
+779,7
@@
X.CSS = {
*/
(function(){
*/
(function(){
- var testStyle = X_UA
.IE4
? {} : ( /*document.documentElement ||*/ document.createElement( 'div' ) ).style,
+ var testStyle = X_UA
[ 'IE4' ]
? {} : ( /*document.documentElement ||*/ document.createElement( 'div' ) ).style,
temp = testStyle.cssText,
vendors = 'webkit,Webkit,Moz,moz,Ms,ms,O,o,khtml,Khtml'.split( ',' ),
searches = (
temp = testStyle.cssText,
vendors = 'webkit,Webkit,Moz,moz,Ms,ms,O,o,khtml,Khtml'.split( ',' ),
searches = (