ã¯ããã«
ãThe Yahoo! User Interface Library ï¼YUIï¼ã¯AJAXãã¼ã¹ã®ãªãããªã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¼ã¹ãéçºããããã®ãªã¼ãã³ã½ã¼ã¹ã®JavaScriptã©ã¤ãã©ãªã§ããæ°ããYahoo! Mailã§ã¯YUIã使ããã¦ããã®ã§ããã®ã©ã¤ãã©ãªãããã«å¼·åãªãã®ãæ³åã§ããã§ããããæ¬ç¨¿ã¯3åã·ãªã¼ãºã®1åç®ã§ãããã®ã·ãªã¼ãºã®ä¸»ãªå¯¾è±¡èªè ã¯ãJavaScriptã®å°éç¥èã¯ãã¾ããªãããã©ãããµã¼ãã¼ãµã¤ããã¬ã¼ã ã¯ã¼ã¯ï¼JavaServer PagesãStrutsãSpringãªã©ï¼ã使ã£ãWebã¢ããªã±ã¼ã·ã§ã³éçºã¯ãããªãã«çµé¨ãã¦ããã¨ããJavaéçºè ã§ããä»åã¯JavaScriptã®åå¿è ã®ããã«ãã»ããã¢ããããã¶ã¤ã³ã«ãããYUIã®å©ç¨æ¹æ³ã¨ããªãã¸ã§ã¯ãæåJavaScriptããã°ã©ãã³ã°ã«ã¤ãã¦èª¬æãã¾ããæ¢ã«JavaScriptã«ç²¾éãã¦ããæ¹ã¯ããã®ã·ãªã¼ãºãYUIã©ã¤ãã©ãªã¸ã®æå¼ãã¨ãã¦ãå©ç¨ãã ããã
ããã®ã·ãªã¼ãºã®2åç®ã¨3åç®ã§ã¯æ¬¡ã®ãããã¯ãåãä¸ãã¾ãã
- ã³ã³ãããã¬ã¤ã¢ã¦ããã¦ã£ã¸ã§ãããã¤ãã³ãå¦çãAJAXã³ã³ãã¼ãã³ãããµã¼ãã¼ãµã¤ã対話
- DataTableããã¼ã¸ãã¼ã·ã§ã³ãã½ã¼ããJSONãã¨ã©ã¼å¦ç
YUIã®æ¦è¦
ãç°¡åã«è¨ãã¨ãYUIã©ã¤ãã©ãªã¯Webã¢ããªã±ã¼ã·ã§ã³ã®ãã¾ãã¾ãªé¢ã«å¯¾å¿ããããã®ã³ã³ãã¼ãã³ãã®éã¾ãã§ãããããã®ã³ã³ãã¼ãã³ãã¯æ¬¡ã®ã«ãã´ãªã«å¤§å¥ããã¾ãã
- ã³ã³ããã¼ã«ï¼ã¦ã£ã¸ã§ãã
- PanelãTooltipãDialogãªã©ã®ã³ã³ããã³ã³ãã¼ãã³ã
- ButtonãCalendarãDataTableãMenuãPaginatorãRich Text Editorãªã©ã®UIã¦ã£ã¸ã§ãã
- ãµã¼ãã¼ãµã¤ãã¢ã¸ã¥ã¼ã«ã¨å¯¾è©±ããããã®ã³ã³ãã¼ãã³ã
- DOMããã³ã¤ãã³ãå¦çãæ±ãããã®ã³ã³ãã¼ãã³ã
- ã¢ãã¡ã¼ã·ã§ã³ããã©ãã°ï¼ããããããã¼ã¸ã¬ã¤ã¢ã¦ããªã©ã管çããã³ã³ãã¼ãã³ã
ãã©ã®ã³ã³ãã¼ãã³ããYUIã½ã¼ã¹ã³ã¼ãã¯3種é¡ã®å½¢å¼ã§æä¾ããã¦ãããã¢ããªã±ã¼ã·ã§ã³åºæã®åé¡ããããã°ããã®ã«å½¹ç«ã¡ã¾ãã
- ãæ¨æºå½¢å¼ãâã³ã³ãã¼ãã³ãã®å®è£ ãç¥ãã®ã«å½¹ç«ã¡ã¾ãã
- ããããã°å¯¾å¿ãâãããã°æ å ±ãåºåãã¾ãã
- ãå§ç¸®ãâãã¦ã³ãã¼ãã®ããã©ã¼ãã³ã¹ãé«ããããã«ç©ºç½ãåé¤ããã¦ãã¾ãã
JavaScriptããã°ã©ãã³ã°ã®è½ã¨ãç©´
ãJavaScriptã¢ããªã±ã¼ã·ã§ã³ã®éçºã¨ãããã°ã¯éª¨ã®æããä»äºã§ããJavaéçºè ã«ã¨ã£ã¦ã¯ç¹ã«ããã§ããFirebugã®ãããªJavaScriptãããã¬ã使ç¨ããã¨ãã¦ããã¨ã©ã¼ãçªãæ¢ããã®ã¯å®¹æã§ã¯ããã¾ãããJavaScriptããã°ã©ãã³ã°ã§ããè¦ããã次ã®è½ã¨ãç©´ã¨ãã®è§£æ±ºçãç°¡åã«ç´¹ä»ãã¦ããã¾ãã
- é¢æ°ã®å®£è¨æã«ãã¼ã«ã«å¤æ°ã®é ã«
var
ãã¼ã¯ã¼ããä»ããã¨ãé¢æ°ã®ç¯å²å¤ã§ãå¤ãç¶æããã¾ããããããã¨ãä½ãã¾ããã£ãã®ãå¤æãã«ãããªãã¾ãã - JavaScriptã§ã¯ä½ããããé¢æ°ãªã®ã§ãã¯ã©ã¹ã®ã¤ã³ã¹ã¿ã³ã¹ãä½æããã«ã¯
new
ãã¼ã¯ã¼ããæ£ç¢ºã«ä½¿ç¨ããªããã°ãªãã¾ãããããããªãã¨ãJavaScriptãé¢æ°ãå¼ã³åºãã¦ãå·¦å´ã®ãªãã©ã³ãã«æ»ãå¤ãä»£å ¥ãã¾ãã - é¢æ°ã«åç §ã渡ãã¨ãã«é¢æ°åã®æ«å°¾ã«å·¦å³ã®ä¸¸æ¬å¼§ãä»ãã¦ã¯ãªãã¾ãããããããã¨ãå®éã«é¢æ°ãå¼ã³åºããã¾ãã
- DataTableã³ã³ãã¼ãã³ãã«æ¸¡ãåå¹ ã¯IEã¨Firefoxã¨ã§ç°ãªãã¾ããFirefoxã§ã¯ãIEãããåå¹ ã20ãã¯ã»ã«å°ãããªããã°ãªãã¾ããã
- JavaScriptã³ã¼ãã®åä½ã¯ãã©ã¦ã¶ã«ãã£ã¦ç°ãªãã¾ãããã®ãããã¢ããªã±ã¼ã·ã§ã³ã«å¤æ´ãå ããéã«ã¯å¯¾è±¡ã¨ãªããã¹ã¦ã®ãã©ã¦ã¶ã§ã¢ããªã±ã¼ã·ã§ã³ããã¹ãããªããã°ãªãã¾ããã
- æ°ããYUIã³ã³ãã¼ãã³ãã使ç¨ããã¨ãã«ã½ã¼ã¹JavaScriptãã¡ã¤ã«ãåãè¾¼ãã®ãå¿ããã¨ãã¨ã©ã¼ã¯åºããã¾ãããããã®ã³ã³ãã¼ãã³ãã¯åä½ãã¾ãããYUI Loaderã使ã£ã¦å¿ è¦ã«å¿ãã¦ã½ã¼ã¹ãã¡ã¤ã«ããã¦ã³ãã¼ãããã¨ããæ¹æ³ãããã¾ãããç§ã¯ä½¿ç¨ä¸ã®ã³ã³ãã¼ãã³ãã®åã ã®ã½ã¼ã¹ãã¡ã¤ã«ããªã³ã¯ããã¨ããæ¹æ³ã好ãã§ä½¿ç¨ãã¦ãã¾ããããããã°ããã¦ã³ãã¼ããããã®ãæ£ç¢ºã«ã³ã³ããã¼ã«ã§ãã¾ããããã¯Javaããã°ã©ã ã«å¿ è¦ãªã¯ã©ã¹ãã¤ã³ãã¼ãããã®ã¨ããä¼¼ãåç´ãªã¢ããã¼ãã§ãã
YUIã®ãªãã¸ã§ã¯ãæåJavaScriptãã¶ã¤ã³
ãAJAXãã¬ã¼ã ã¯ã¼ã¯ãåºç¾ããã¾ã§ãJavaScriptã¯ã¢ããªã±ã¼ã·ã§ã³éçºãã©ãããã©ã¼ã ã¨ãã¦æ±ããã¦ãã¾ããã§ããããªãã¸ã§ã¯ãæåãã¶ã¤ã³ã®ãµãã¼ããããã«ãããããããJavaScriptã¯æå°éã®åçWebãã¼ã¸åä½ãå®è£ ããããã®åãªãã¹ã¯ãªããè¨èªã¨ãã¦æ±ããã¦ãã¾ãããJavaScriptéçºã§ãªãã¸ã§ã¯ãæåãã¶ã¤ã³ãå©ç¨ãããããYUIã¯ãã¹ã¦ã®ã³ã³ãã¼ãã³ãã§ãªãã¸ã§ã¯ãæåãã¶ã¤ã³ã使ç¨ãã¦ãã¾ãã
ã以ä¸ã§ã¯ãJavaScriptã§ã®ãªãã¸ã§ã¯ãæåããã°ã©ãã³ã°ãå®éã«ç¤ºãããªãã¸ã§ã¯ãæåJavaScriptã¢ããªã±ã¼ã·ã§ã³ç¨ã®ã¯ã©ã¹ãæ§ç¯ããããã®ã¢ããã¼ããç´¹ä»ãã¾ããYUIã©ã¤ãã©ãªã¯ãã®ã¹ã¿ã¤ã«ã®éçºã容æã«ãã¦ãããã³ã³ãã¼ãã³ããæä¾ãã¾ãã
åå空éã®ä½æ
ãã¨ã³ã¿ã¼ãã©ã¤ãºã½ããã¦ã§ã¢ã§ã¯ãã¯ã©ã¹ãããããã®åä½ã«åºã¥ãåå空éã®ä¸ã§ã°ã«ã¼ãåããã®ãæ®éã§ãããã®ãããã¯ã©ã¹ã¨ãªãã¸ã§ã¯ãã®ä½ææ¹æ³ãå¦ã¶åã«ãåå空éã«ã¤ãã¦å¦ã¶ãã¨ã大åã§ãã
ãå¿ è¦ãªåå空éããã¹ã¦YAHOOåå空éã«å ¥ããããã«ãããå ´åã¯ããããã次ã®ããã«ãã¦ä½æãã¾ãã
YAHOO.namespace("myapp"); YAHOO.namespace("myapp.util"); YAHOO.namespace("myapp.ui"); YAHOO.myapp.Main = function() { }
ããã®ã³ã¼ãã«ãã£ã¦3ã¤ã®åå空éãä½æãããYAHOO.myapp
åå空éã®ä¸ã«ã¯ã©ã¹ãä½æããã¾ãã
ããããã¯ã次ã®ããã«ãã¦ç¬èªã®åå空éãå®ç¾©ãããã¨ãã§ãã¾ãã
if(!DevX) DevX = {}; if(!DevX.myapp) DevX.myapp = {}; DevX.myapp.Main = function() { }