X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=0.6.x%2Fjs%2F01_core%2F01_X.js;h=8f84e890fb2ac5bde5cdfebd0bd6e4e335ba27a4;hb=HEAD;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..8f84e89 100644
--- a/0.6.x/js/01_core/01_X.js
+++ b/0.6.x/js/01_core/01_X.js
@@ -1,28 +1,72 @@
-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 );
+/**
+ *
API ããã¥ã¡ã³ãã¨ä½µãã¦ããã®æå³ãèæ¯ã綴ã£ã¦ããå¯èªæ¬ãã覧ãã ããã
+ * ã¯ã©ã¦ãçªå¤å° > ãºã£ããR APIææ¸ã®å¯èªæ¬
+ *
+ * @example // ã©ã¤ãã©ãªã¯ X ã¨ããåå空éã使ç¨ãã¾ãã
+ * //ã·ã§ã¼ããã³ã
+ * X( func ) == X.ViewPort[ 'listenOnce' ](X.Event.XDOM_READY, func);
+ * X('#mydiv') == X.Doc.find('#mydiv');
+ * @namespace X
+ */
+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 );
};
-} };
+};
+
+//{+DEV
+if( !window['console'] || ( window.parent && window.parent.log ) ){
+ console = {
+ log : function(a){
+ var 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( !console.dir ) console.dir = function(){};
+//+DEV}
+
+//{-AUDIO
+//-AUDIO}
var undefined,
- X = new Function( 'return X._shortcut && X._shortcut.apply( X._shortcut, arguments )' ),
- X_TEMP = {};
+ X_EMPTY_OBJECT = {},
+ X_TEMP = { onSystemReady : [] },
+ X_emptyFunction = new Function,
+ X_shortcutFunction,
+ X_shortcutContext;
-X.VERSION = '0.6.89';
-
-X.bootTime = + new Date;
-
-X.getTime = Date.now ? Date.now : new Function( 'return +new Date' );
+/**
+ * ãã¼ã¸ã§ã³æåå:"0.6.xxx"
+ * @type {string} */
+X[ 'VERSION' ] = '0.6.181';
+/**
+ * ãã¼ãã¿ã¤ã ms
+ * @type {number} */
+X[ 'bootTime' ] = + new Date;
-X.emptyFunction = new Function;
+/**
+ * 空ã®é¢æ°
+ * @type {Function} */
+X[ 'emptyFunction' ] = X_emptyFunction;
- // defer ã®å ´åãããã®ã§ãdocument.readyState ãè¦ã MacIE 㧠false
-X.inHead = (function( s ){
+/**
+ * ãã®scriptã¯headã¿ã°ã®ä¸ã«ãããï¼
+ * @type {boolean} */
+// TODO defer ã®å ´åãããã®ã§ãdocument.readyState ãè¦ã
+// TODO body ã®æç¡ãè¦ãã°OKã§ã¯ãªãã?
+// MacIE 㧠false
+X[ 'inHead' ] = (function( s ){
if( !s ) return false;
if( !s.length ) return false; // Safari1.3 312.8 ã§error
s = s[ s.length - 1 ];
@@ -31,94 +75,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;
-};