OSDN Git Service

Version 0.6.132, fix X.Node._flags & fix X.EventDispatcher._listeners & start to...
[pettanr/clientJs.git] / 0.6.x / js / 01_core / 01_X.js
index 81ed30d..fabeeeb 100644 (file)
@@ -1,3 +1,44 @@
+/**\r
+ * <h4>はじめに:Web 開発の世界へようこそ!</h4>\r
+ * DHTML と XHR 等を活用した Ajax によってその真価を発揮した javascript は、現在では RIA に SPA や 3D ゲームなど、あらゆるアプリケーションがブラウザ上で動きつつあります。\r
+ * それらの素晴らしいデモに触れ、これから Web 開発に望む皆さんは、胸をときめかせていることでしょう。\r
+ * そうです、今や Web ブラウザは、あなたの夢を何でも描くことの出来る自由なフロンティアです。\r
+ * \r
+ * しかし、いざ Javascript を触り始め、初めての開発に着手すると、Web ブラウザというフロンティアは、少し雑草の茂るだけの荒野だと気付くでしょう。\r
+ * ここに RIA や 3D ゲームといった素晴らしいテーマパークを築機上げるには、まずは測量に整地、地盤や土壌の改良といった膨大な作業をしなくてはいけません。\r
+ * \r
+ * 簡素な物置小屋のための最初の柱を建てるのにも、それ以前に膨大な作業の必要なことに、あなたは唖然となるでしょう。\r
+ * そのような基礎もそこそこに、勇んで建てた一本目の柱は傾き、または無残に朽ち果てるのを目撃し、あなたは深いため息をつくかもしれません。\r
+ * \r
+ * Javascript は様々な問題を孕みつつも、今や最もあらゆるプラットフォームで動作する言語のひとつへと躍進しました。\r
+ * これから、このフロンティアに如何に基礎を作り、その上にテーマパークを作るのか?一緒に考えていきましょう。\r
+ * ようこそ、Web 開発の世界へ!\r
+ * \r
+ * <h4>pettanR フレームワーク API ドキュメントについて</h4>\r
+ * このAPIドキュメントには、折に触れこのような長文が登場します。\r
+ * Web 開発は今では、そのカジュアルなイメージとは裏腹に、膨大な知識と経験が必要なものになってしまっています。\r
+ * どのようにして、それらの情報を、妥当な業務時間の間に継承していけばよいか?\r
+ * \r
+ * この意識は常にありましたが、このたび pettanR フレームワークの API ドキュメントを作成するにあたり、それに付記していく形で取り組んでみようと思います。\r
+ * \r
+ * <h4>フレームワークのレイヤー構造について</h4>\r
+ * \r
+ * \r
+ * ライブラリは X という名前空間を使用します。\r
+ * @example //ショートハンド\r
+ * X( func ) == X.ViewPort.listenOnce(X.Event.XDOM_READY, func);\r
+ * X('#mydiv') == X.Doc.find('#mydiv');\r
+ * @namespace X\r
+ */ \r
+function X( v ){\r
+       if( X.Type.isFunction( v ) ){\r
+               X.ViewPort.listenOnce( X.Event.XDOM_READY, v );\r
+       } else\r
+       if( X_shortcutFunction ){\r
+               return X_shortcutFunction.apply( X_shortcutContext || X, arguments );\r
+       };\r
+};\r
+\r
 //{+DEV\r
 if( !window['console'] || ( window.parent && window.parent.log ) )\r
        console = { log : function(a){\r
@@ -17,23 +58,23 @@ var undefined,
        X_shortcutContext;\r
 \r
 /**\r
- * @namespace ライブラリは X という名前空間を使用します。X( func ) で  X.ViewPort.listenOnce(X.Event.XDOM_READY, func)、 X('#mydiv') として X.Doc.find('#mydiv') のショートハンドになります。\r
- */ \r
-function X( v ){\r
-       if( X.Type.isFunction( v ) ){\r
-               X.ViewPort.listenOnce( X.Event.XDOM_READY, v );\r
-       } else\r
-       if( X_shortcutFunction ){\r
-               return X_shortcutFunction.apply( X_shortcutContext || X, arguments );\r
-       };\r
-};\r
-\r
+ * バージョン文字列:"0.6.123"\r
+ * @type {string} */\r
 X.VERSION = '0.6.127';\r
-               \r
+\r
+/**\r
+ * ブートタイム ms\r
+ * @type {number} */\r
 X.bootTime = + new Date;\r
 \r
+/**\r
+ * 空の関数\r
+ * @type {Function} */\r
 X.emptyFunction = new Function;\r
 \r
+/**\r
+ * このscriptはheadタグの中にあるか?\r
+ *  @type {boolean} */\r
 // TODO defer の場合もあるので、document.readyState を見る\r
 // MacIE で false\r
 X.inHead = (function( s ){\r