X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=0.6.x%2Fjs%2F01_core%2F01_X.js;h=2685af273b62eddff07b83e91714b079f7a5007d;hb=a4b6249d16b938ce6fd1c7691f144ff99729056f;hp=e53d43e0205511257fb06a67d0d7c3ae93c31a76;hpb=c54d46848e396b9208daa4d4cb535b4b461cb019;p=pettanr%2FclientJs.git diff --git a/0.6.x/js/01_core/01_X.js b/0.6.x/js/01_core/01_X.js index e53d43e..2685af2 100644 --- a/0.6.x/js/01_core/01_X.js +++ b/0.6.x/js/01_core/01_X.js @@ -1,27 +1,36 @@ -if( !window['console'] || ( window.parent && window.parent.log ) ) console = { log : function(a){ - var win, elm; - //alert(a); - if( window.parent ){ - elm = parent.document.all ? parent.document.all.log : parent.log || parent.document.getElementById( 'log' ); - elm && ( elm.innerHTML = a + '
' + elm.innerHTML ); - }; -} }; +if( !window['console'] || ( window.parent && window.parent.log ) ) + console = { log : function(a){ + var win, elm; + //alert(a); + if( window.parent ){ + elm = parent.document.all ? parent.document.all.log : parent.log || parent.document.getElementById( 'log' ); + elm && ( elm.innerHTML = a + '
' + elm.innerHTML ); + }; + } }; var undefined, - X = new Function( 'return X._shortcut && X._shortcut.apply( X._shortcut, arguments )' ), - X_TEMP = {}; + X_TEMP = { onSystemReady : [] }, + X_shortcutFunction, + X_shortcutContext; + +function X( v ){ + if( X.Type.isFunction( v ) ){ + X.ViewPort.listenOnce( X.Event.XDOM_READY, v ); + } else + if( X_shortcutFunction ){ + return X_shortcutFunction.apply( X_shortcutContext || X, arguments ); + }; +}; -X.VERSION = '0.6.89'; +X.VERSION = '0.6.103'; X.bootTime = + new Date; - -X.getTime = Date.now ? Date.now : new Function( 'return +new Date' ); - X.emptyFunction = new Function; - // defer の場合もあるので、document.readyState を見る MacIE で false +// TODO defer の場合もあるので、document.readyState を見る +// MacIE で false X.inHead = (function( s ){ if( !s ) return false; if( !s.length ) return false; // Safari1.3 312.8 でerror @@ -31,94 +40,3 @@ X.inHead = (function( s ){ return s.tagName.toLowerCase() === 'head';// opera7.23 s.tagName is 'HTML' })( document.scripts || document.getElementsByTagName && document.getElementsByTagName( 'script' ) || document.all && document.all.tags( 'script' ) ); -X.parse = function( v ){ - var _v, n; - if( Type.isString( v ) === true ){ - switch( v ){ - case '' : return v; - //case '{}' : return {}; - //case '[]' : return []; - case 'NaN' : return NaN; - case 'null' : return null; - case 'true' : return true; - case 'false' : return false; - case 'Infinity' : return 1/0;//Number.POSITIVE_INFINITY; - case '-Infinity' : return -1/0;//Number.NEGATIVE_INFINITY; - case 'void(0)' : - case 'void 0' : - case 'undefined' : return; - }; - _v = v.split( ' ' ).join( '' ); - n = _v - 0; - if( '' + n === _v || '' + n === '0' + _v ) return n; - }; - return v; -}; - -X.cloneObject = function( src ){ - var ret, k; - if( typeof src !== 'object' ) return src; - ret = {}; - for( k in src ){ - ret[ k ] = src[ k ]; - }; - return ret; -}; - -X.deepCopy = function( src ){ - function clone( src, objSrc, objCopy, n ) { - var ret, i, key; - if( !src ){ // 0, "", null, undefined, NaN, false - return src; - } else - if( X.Type.isArray( src ) ){ - i = objSrc.indexOf( src ); - if( i !== -1 ) return objCopy[ i ]; - objSrc[ ++n ] = src; - objCopy[ n ] = ret = []; - } else - if( X.Type.isObject( src ) ){ - i = objSrc.indexOf( src ); - if( i !== -1 ) return objCopy[ i ]; - objSrc[ ++n ] = src; - objCopy[ n ] = ret = {}; - } else { - // string, number, true - return src; - }; - for( key in src ){ - ret[ key ] = clone( src[ key ], objSrc, objCopy, n ); - }; - return ret; - }; - return clone( src, [], [], -1 ); -}; - - - - -X.copyArray = function( ary ){ - var ret = [], i = ary.length; - if( !i ) return ret; - for( ; i; ){ - ret[ --i ] = ary[ i ]; - }; - return ret; -}; - -X.isEmptyObject = function( v ){ - var p; -// if( v.length ) return false; - for( p in v ){ - if( v.hasOwnProperty( p ) ) return false; - }; - return true; -}; - -X.matchTest = function( array1, array2 ){ - var i = array2.length; - for( ; i; ){ - if( array1.indexOf( array2[ --i ] ) === -1 ) return false; - }; - return true; -};