鑻辨枃鐗?a href="http://d/Administrator%CE%C4%B5%B5%BA%CD%CA%D5%B2%D8%BC%D0/http%7C//manual.dojotoolkit.org/WikiHome/DojoDotBook" target="_blank">:http://manual.dojotoolkit.org/WikiHome/DojoDotBook
緲昏瘧: Burnet
璇戣呭簭:闅忕潃web2.0鐨勭儹娼?google,yahoo絳夊悇澶eb渚涘簲鍟嗕簤鍏堟亹鍚庣殑閫鍑鴻嚜宸辯殑ajax寮鍙戝寘,鎰忓浘浜夊ずajax鏍囧噯.絀剁珶楣挎璋佹墜?鏈変漢鐪嬪ソYui,鏈変漢鍠滄GWT,榪樻湁浜哄榪欎簺閮藉棨涔嬩互榧?璁や負鑷繁鍐檍avascript鎵嶆槸鐜嬮亾.
濂戒簡,璋佷紭璋佸姡鏆傛斁涓杈?鐜板湪鎴戣緇欏ぇ瀹剁殑鏄敱IBM鐮斿彂鐨刣ojo寮鍙戝伐鍏?toolkit)鐨勫紑鍙戦鍐?鐢辨垜鏉ョ炕璇?
鏈鍚庤涓鍙ラ澶栬瘽,鏈漢鍑哄浗宸蹭箙,铏界劧騫蟲椂緇忓父涓奀SDN涔嬬被鐨勮鍧?浣嗘槸瀵逛腑鏂囨湳璇繕涓嶆槸闈炲父綺鵑?鎵浠ユ湁鐨勬椂鍊欑炕璇戜竴浜涙湳璇殑鏃跺欎笉澶噯紜?鎴? 浼氭妸閭d簺鎴戞嬁涓嶅噯鐨勬湳璇湪鍚庨潰鏍囨敞涓婅嫳鏂?榪樻湁鏈功浣滆呴鏍兼瘮杈冨菇榛橈紝鏈変簺涓嶈兘鐩磋瘧涓枃錛屼篃娌℃湁蹇呰緲昏瘧錛屾垜浼氬敖鎴戞墍鑳斤紝鐩殑鏄澶у鑳芥帉鎻ojo銆?/font>
聽
鍋氫漢瑕佸帤閬擄紝杞澆璇瘋憲鍚嶄笓鑷?a target="_blank">Burnet's Blog
榪欓噷灝嗙粰浣犲浜巇ojo鐨勫惎钂欒紼嬨備綘鍙兘浼氳窡鑷繁璇?榪欐鍙互璺寵繃浜嗭紝鍥犱負鎴戝凡緇忓緢浜嗚Вjavascript騫朵笖瀵圭綉绔欏紑鍙戝緢浜嗚В浜嗐傗滀笉榪囪繖閲屾湁涓満浼氳浣犺璇嗗埌鍏跺疄浣犵殑鐭ヨ瘑騫朵笉鏄偅涔堟墡瀹烇紝榪樻湁寰堝鍩虹鐨勪笢瑗塊渶瑕佸涔犮?/p>
褰?鎴戜滑緇欎漢浠粙緇峝ojo鐨勬椂鍊欙紝閬囧埌浜嗕袱縐嶉毦棰樸傛湁浜涚敤鎴峰凡緇忎嬌鐢―HTML寰堜箙錛屽茍涓斿javascript鏈変簡寰堟繁鐨勭悊瑙o紝浠栦滑娓呮 javascript鑳戒綔浠涔堬紝涓嶈兘鍋氫粈涔堬紝鍦ㄨ剳嫻烽噷瀛樺湪瀹氬瀷鎬濈淮錛屾湁浜涙椂鍊欙紝鏇撮毦璁╄繖浜涗漢鏄庣櫧dojo銆傜浜岀闅鵑灝辨槸瀵逛簬閭d簺鏂版墜錛屼粬浠お緙轟箯緇忛獙鍜? 瀵筳avascript鐨勪簡瑙d簡銆?/p>
鎴戦紦鍔辮繖涓ょ鏈嬪弸閮借涓涓嬩粙緇嶅唴瀹癸紝鐢氳嚦浣犲彲浠ヤ笉鍏ㄧ湅銆?/p>
浠涔堟槸Dojo錛?/strong>
鍏跺疄鎬葷粨Dojo鍒板簳鏄粈涔堟槸闈炲父鍥伴毦鐨勩傛垜璇存葷粨Dojo鏄緢鍥伴毦鐨勶紝鏄洜涓篋ojo鏄竴涓彲鎵╁睍鐨勪唬鐮侀泦鍚? 錛坋xpandable collection of code)銆傛墿灞曚笉鍙槸鏉ヨ嚜浜庝紬澶氬紑鍙戣咃紝騫朵笖浣犱細鍙戠幇浣犲彲浠ユ牴鎹綘鑷繁鐨勯渶瑕佹墿灞曡嚜宸辯殑涓濂椾笢瑗褲傚氨鏄錛屼綘鎶婄洰鍏夋斁鍦―ojo韜笂鐨勫師鍥犳槸鍥犱負 Dojo鍙互鍜宩avascript鍙栭暱琛ョ煭銆?/p>
鍦ㄥ紑鍙戝鎴風錛坈lient錛峴ide development錛夋誨叡鏈?涓富瑕侀儴鍒嗭細events錛岄噸澶嶄嬌鐢―HTML blocks錛屽鎴風鍜屾湇鍔″櫒浼犻掍俊鎭侱ojo鍦ㄨ繖涓夋柟闈㈤兘寰堝湪琛岋紝騫朵笖浣夸粬浠彉鐨勫緢瀹規槗銆?/p>
鍘嗗彶
璇戣呮敞錛氬巻鍙叉垜鏄湡涓嶆兂緲昏瘧浜嗭紝濡傛灉鏈変漢寰堟劅鍏磋叮鐨勮瘽錛屽彲浠ョ粰鎴戠暀璦錛屾垜鏈夋椂闂翠細緲昏瘧鐨勩?/p>
銆傘傘傘傘傘傘傘傘傘傘傘?/p>
浠涔堟槸宸ュ叿錛圱oolkit錛?
寰堝浜鴻涓虹粨鏋勶紙framework錛夛紝搴擄紙library錛夛紝宸ュ叿鏄悓涓涓剰鎬濄備絾鏄紕娓呮瀹冧滑涔嬮棿鐨勫尯鍒紝瀵逛簬浠ュ悗鐨勭悊瑙e緢鏈夊府鍔┿?/p>
Framework
鍦ㄨ蔣浠跺紑鍙戜腑錛屼負浜嗚鍏朵粬鐨勯」鐩彲浠ュ垎浜拰鍚堜綔錛岄氬父瀹氫箟涓涓粨鏋勶紙framework錛夈備竴涓粨鏋勯氬父鍖呭惈鏀寔紼嬪簭錛坰upport programs錛夛紝搴撳拰涓涓剼鏈▼搴忋備綘鍙兘璁よ瘑鍒癉ojo灝辨槸framework鐨勪竴涓儴鍒嗭紝浣嗗茍涓嶆槸framework鐨勬湰韜?/p>
Library
搴撴枃浠跺畾涔変簡寰堝鍙互寮曠敤鐨勬柟娉曪紙function錛夛紝瀹冧滑鏄湪浠諱綍浣嶇疆閮藉彲浠ヨ繍琛岀殑錛屽茍涓嶆槸鎴戜滑騫沖父鑷繁鍦ㄧ▼搴忎腑瀹氫箟鐨勬柟娉曘傜湅浜嗚繖浜涳紝浣犲彲鑳戒細璇粹滃樋錛乨ojo灝辨槸搴撶殑闆嗗悎錛佲濄備綘搴旇鏄鐨勶紝浣嗘槸錛宒ojo姣斾竴涓簱鐨勯泦鍚堣鍖呭惈寰楀寰堝銆?/p>
Toolkit
鐪? 榪囧墠鏂囷紝浣犲彲鑳借繕鍦ㄧ悽紓ㄥ埌搴昫ojo鏄綔浠涔堢殑銆傚緢鏄庢樉錛屼粬涓嶆槸涓涓粨鏋勶紙framework錛夛紝瀹冩槸涓涓伐鍏鳳紙toolkit錛夋垨鑰呮槸涓涓簱錛熸渶鍚庤鎴? 鏉ヨВ絳斾竴涓嬶紝閫氬父搴撻兘鏄箣鍓嶅畾涔夊ソ鐨勶紝浣犲彲浠ュ紩鐢ㄥ埌浣犵殑紼嬪簭涓茍浣跨敤瀹冧滑錛屼絾鏄湪dojo涓紝鎴戜滑鍦ㄨ繖涓簱澶栭潰鍔犱簡涓灞傚皝鍖呯郴緇熴傝繖鏍峰氨浣垮畠璺熶竴鑸殑搴撴湁 浜涗笉涓鏍楓?/p>
鍦ㄨ繖涓郴緇熶腑錛屾垜浠妸搴撳垎鎴愬緢澶氶儴鍒嗐傛湁鏍稿績鏂規硶錛坈ore functions錛夛紝榪樻湁寰堝鍏朵粬涓嶅父鐢ㄧ殑瀛愬簱錛坰ub library錛夈傝繖灝變嬌浣犱嬌鐢╠ojo鐨勬椂鍊欐劅瑙夊畠寰堢畝媧併備笅闈細鏈夋洿鍏蜂綋鐨勫垎鏋愶紝浼氳浣犳洿鍔犳槑鐧絛ojo銆?/p>
Dojo浼氱粰浣犱粈涔?/strong>
鏇劇粡錛孨etscape鐩涜涓鏃訛紝澶ч儴鍒嗕漢閮藉湪浣跨敤錛屾墍浠ュ綋鏃禢etscape緇欏嚭浜嗕竴涓綉绔欏埗浣滅殑鏍囧噯銆傚ソ鏅笉闀匡紝鍚庢潵鍑虹幇浜嗗井杞殑IE錛孖E褰撴椂寮鴻繃Netscape錛屾垚涓轟簡鏂扮殑鏍囧噯銆備絾鏄繖涓爣鍑嗚窡W3C鏈変竴瀹氱殑宸埆錛屾墍浠ュ湪浜轟滑鍒朵綔緗戠珯鏃訛紝寮濮嬪悜IE鏂版爣鍑嗛潬鎷€?/p>
寰堝騫磋繃鍘諱簡錛孖E渚濇棫涓嶈觸錛岃屼笖騫舵病鏈夋洿鏂板緢澶氥備竴鏍峰鐨刡ug錛岀己灝戞爣鍑嗗寲銆傛參鎱㈢殑緗戣櫕浠紑濮嬩嬌鐢╢irefox錛宱pera錛宻afari錛屽畠浠負浜嗚窡涓奧3C鐨勬爣鍑嗭紝鎵浠ユ洿鏂板緱寰堝揩銆?/p>
寰堝鍚屾牱鐨勫姛鑳斤紝浣嗘槸瀵逛簬涓嶅悓鐨勬祻瑙堝櫒闇瑕佸啓涓嶅悓鐨勪唬鐮侊紝榪欏鎴戜滑鏉ヨ鎰忓懗鐫浠涔堬紵鎰忓懗鐫鎴戜滑瑕佸仛鍑轟竴涓畬緹庣殑緗戠珯鏄緢鑻﹂毦鐨勩傝繖鏃朵竴涓▼搴忓憳浼氬幓鍋氫粈涔堝憿錛?/p>
鐭ヨ瘑琛ュ厖
濡傛灉鍏変嬌鐢ㄩ潤鎬乭tml鍒朵綔緗戠珯錛屽綋鐒朵笉浼氬嚭鐜頒笂闈㈢殑闂錛屼絾鏄繖涔熸剰鍛寵繖緗戠珯涓嶅彲鑳藉叿鏈変氦浜掓э紝鏈澶氱殑涔熷彧鏄彁渚涗竴涓〃鍗曪紙form錛夎鐢ㄦ埛鎻愪氦錛岀劧鍚庡啀榪斿洖涓涓柊鐨勯〉闈㈡樉紺烘暟鎹?/p>
Javascript鐨勫嚭鐜版鏄負浜嗚В鍐寵繖浜涢毦棰樸?/p>
瑙e喅鎵鏈夐棶棰?/strong>
Dojo涓嶄粎鏄瓨鍦ㄤ簬鎶借薄灞傦紝騫朵笖涔熸槸鐙珛瀛樺湪鐨勩備笉鍙槸鎻愪緵涓浜涘簱錛屼竴浜涙柟娉曪紝涓浜涘姛鑳斤紝鑰屼笖璁╃殑浠g爜鏇村姞綆媧侊紝淇濊瘉浣犵殑浠g爜鍙寘鍚墍闇瑕佺殑閮ㄥ垎銆?/p>
Dojo浼氳浣犵殑鐢熸椿鏇村姞綆鍗曪紝鍥犱負浠栨浛浣犻摼鎺ヤ簡寰堝涓滆タ錛屾妸浣犵殑澶嶆潅欏圭洰鍒嗘垚涓浜涘皬闂錛岃浣犵殑浠g爜鏇寸畝媧侊紝鏇存湁鏁堢巼錛屽茍涓斿彲浠ユ洿濂界殑閲嶅浣跨敤銆?/p>
絎竴绔狅細寮濮嬩嬌鐢―ojo
Dojo鏈夊緢澶氱増鏈紝浣犲彲浠ヤ竴涓嬪瓙涓嶇煡閬撹閫夋嫨鍝釜錛岃繖閲屽彲浠ヨ浣犳斁蹇冿紝鏃犺浣犱嬌鐢ㄧ殑鏄粈涔堢増鏈紝鏈功涓殑渚嬪瓙浣犻兘鍙互榪愯銆?/p>
錛堣瘧鑰呮敞錛氳繖涓槸鎴戜嬌鐢ㄧ殑鐗堟湰錛寊ip鏂囦歡錛屼綘涔熷彲浠ヨ嚜宸卞埌Dojoa涓婚〉榪涜涓嬭澆銆傦級
Dojo妯″潡錛圡odules錛?/strong>
Dojo鐨勫簱瀹氫箟浣跨敤浜嗘ā鍧楋紝灝卞儚JAVA涓鏍楓傝繖鏍峰彲浠ヨ浣犲彧寮曠敤鑷繁闇瑕佺殑閮ㄥ垎錛岃屼笉鏄叏閮紝淇濊瘉浜嗘祻瑙堥熷害銆?/p>
渚嬪Dojo鐨別vent鍖呭畾涔夊湪妯″潡dojo.event涓?/p>
錛堣瘧鑰呮敞錛氭閮ㄥ垎鍘熻憲鐢氭槸鍟板棪錛屾垜緇欑簿綆浜嗕竴涓嬶紝鏈夊叴瓚g殑鏈嬪弸鍙互鍙傝鍘熸枃銆傦級
寮曠敤妯″潡鏍煎紡錛?/p>
dojo.require("dojo.module[.sub module]");
渚嬪鎴戜滑鎯沖紩鐢╨ite effects systems錛?/p>
dojo.require("dojo.lfx");
榪欎細寮曞叆鎵鏈塴fx涓嬬殑瀛愭ā鍧楋紝褰撶劧浣犱篃鍙互浣跨敤dojo.lfx.*錛屽鏋滄兂鍗曠嫭寮曠敤lfx涓嬬殑toggle妯″潡錛?/p>
dojo.require("dojo.lfx.toggle");
Widgets
浠涔堟槸widget鍛紵涓涓寜閽?錛屼竴涓浘鐗囷紝榪欓兘鏄痺idget錛屾渶甯歌鐨刪tml widget鏈夐摼鎺ワ紝鎸夐挳錛岃緭鍏ユ銆?/p>
浣跨敤Dojo鍙互鏀瑰彉widget 錛屼緥濡傚湪鏃ユ湡杈撳叆妗嗘梺杈瑰姞涓婁竴涓僵鑹叉棩鍘嗭紝璁╃敤鎴峰彲浠ラ夋嫨鏃ユ湡錛屼笌姝ゅ悓鏃禗ojo騫朵笉浼氱牬鍧忎綘鍘熷鐨勮緭鍏ユ錛屽洜涓篋ojo鏄墿灞曚簡浣犵殑html鑰屼笉鏄浛鎹簡瀹冦?/p>
浣跨敤widget鐨勪紭鍔夸富瑕佷笁鐐癸細
- 璺ㄥ鉤鍙幫細浣跨敤Dojo widget錛屾棤璁轟嬌鐢ㄤ換浣曟祻瑙堝櫒錛岄兘浼氬噯紜殑寰楀埌姝g‘鏁堟灉銆?/li>
- 鑷姩閫鍖栵細涓浜涜佹祻瑙堝櫒鍙兘瀵筳avascript鏀寔騫朵笉鏄偅涔堝畬緹庯紝Dojo涔熷彲浠ヨ瀹冧滑鏄劇ず鍑烘紜殑鍐呭錛屼緥濡傚墠闈㈠僵鑹叉棩鍘嗙殑渚嬪瓙錛屽鏋滄祻瑙堝櫒涓嶆敮鎸侊紝閭d箞Dojo浼氳嚜鍔ㄥ皢鏃ュ巻閫鍖栧埌涓涓畝鍗曠殑閫夋嫨妗嗭紝鎴栬呭叾浠栵紙鏍規嵁涓嶅悓widget鑰屽畾錛夈?/li>
- 鎵╁睍鎬э細浣犲彲浠ュ埄鐢―ojo鎻愪緵鐨剋idget鍒涢犲嚭鏂扮殑widget錛屽湪榪欎釜榪囩▼涓綘騫朵笉闇瑕佷粠搴撲腑澶嶅埗浠諱綍浠g爜鎴栬呬慨鏀瑰簱涓殑浠g爜銆?/li>
濡備綍浣跨敤Widget
Widget鏈夊緢澶氫嬌鐢ㄦ柟娉曘俉idget浼氭悳绱㈡暣涓綉欏墊鏋訛紝鐒跺悗鑷姩鎶婂簲璇ユ坊鍔犵殑鍐呭鍔犲叆鍒板綋涓?/p>
涓嬮潰鏄釜綆鍗曠殑渚嬪瓙錛屾垜浠篃鍙互鐪嬪嚭WIdget鏄庢牱鑷姩閫鍖栫殑錛屽洜涓烘垜浠茍娌℃湁緇機omboBox瀹氫箟閫夋嫨欏癸紝鑰屽彧鏄竴涓獀alue錛岃屼笖鎵浠ユ渶鍚庢樉紺哄嚭鏉ョ殑鍙薄鏄竴涓畝鍗曠殑inputbox錛?/strong>濡傛灉鐢ㄦ埛紱佺敤浜唈avascript錛屾樉紺虹粨鏋滀篃浼氫竴鏍楓?/p>
<input dojoType="ComboBox" value="default" dataUrl="comboBoxData.js">
浣嗘槸濡傛灉鎴戜滑鍙兂浣跨敤W3C鏍囧噯錛?font color="#990000">璇戣呮敞錛氭病鏈夐偅浜涢澶栫殑tag錛屼緥濡俤ojoType錛夛紝鎴戜滑鍙互鐢ㄤ笅闈㈢殑鏂規硶銆?/p>
<input class="dojo-ComboBox?" value="default" dataUrl="comboBoxData.js">
<dojo:ComboBox? value="default" dataUrl="comboBoxData.js">
浣犲彲鑳芥敞鎰忓埌浜哾ataUrl錛屼粬鐨勪綔鐢ㄦ槸鎶奵omboBoxData.js涓殑鍐呭鍔犲埌comboBox涓紝浣嗘槸鐜板湪comboBoxData.js涓病鐢ㄤ換浣曞唴瀹廣傦紙璇戣呮敞錛氬綋鐒朵綘鍙互闅忔剰鏀瑰彉dataUrl鐨勫唴瀹癸紝鍚嶅瓧涓嶆槸鍥哄畾鐨勩?/font>錛?/p>
涓嬮潰鏄竴涓猻elect鐨勪緥瀛愶細
<select dojoType="combobox">
<option value="foo">foo</option>
<option value="bar">bar</option>
<option value="baz">baz</option>
<option value="thud">thud</option>
</select>浠庝笂闈㈢殑渚嬪瓙涓紝浣犵煡閬撲簡寰堝浜嬫儏錛屼絾鍗村ソ鍍忔病浠涔堢敤澶勶紝榪欓噷鍙槸鎯沖憡璇変綘鍏跺疄dojo騫舵病鏈夐偅涔堝鏉傘?/p>
鍚庨鍜屽墠榪?/strong>
鍔ㄦ佺綉欏電▼搴忥紙dynamic web application錛夐伩鍏嶄簡棰戠箒鐨勫埛鏂伴〉闈紝涓嶈繃閫氬父涔熷甫鏉ュ悗閫鍜屽墠榪涙寜閽細澶卞幓浣滅敤銆傛洿澶氱殑錛屾湁鐨勬椂鍊欙紝鐢ㄦ埛鍙兘寰堥毦鎶婄綉欏靛姞鍏ユ敹钘忓す銆?/p>
Dojo鎻愪緵浜嗕竴涓В鍐沖姙娉曪紝璁╃綉欏電▼搴忓鐞嗘祻瑙堝櫒鐨勫悗閫鍜屽墠榪涳紝騫朵笖鎻愪緵緇欐祻瑙堝櫒涓涓敮涓鐨勫湴鍧銆傝繖涓В鍐沖姙娉曞氨鏄嬌鐢╠ojo.undo.browser銆?/p>
浣跨敤dojo.undo.browser
鍦╠ojo 0.2.2鐗堟湰涓紝騫舵病鏈塪ojo.undo.browser錛岃繖鏄湪0.3浠ュ悗鐨勭増鏈腑鎵嶅姞鍏ョ殑銆?/p>
棣栧厛錛岄渶瑕佷嬌鐢╠ojo.undo.browser.setInitialStae(state)璁懼畾褰撴祻瑙堝櫒絎竴嬈¤澆鍏ョ綉欏電殑鐘舵併?/p>
鐞嗚
鍔? 鎬佺綉欏電▼搴忎細璋冪敤XMLHTTPRequest鍜孌OM鏉ユ洿鏂扮綉欏靛唴瀹硅岄伩鍏嶄簡鍒鋒柊錛屾洿鏂版祻瑙堝巻鍙詫紝騫朵笖涔熶笉浼氭敼鍙樻祻瑙堝櫒鐨勫湴鍧鏍忋傝繖灝辨剰鍛崇潃褰撶敤鎴風偣鍑? 浜嗗悗閫鎸夐挳錛屾暣涓綉欏電▼搴忎涪澶變簡褰撳墠榪愯鐨勭姸鎬侊紙state錛夈傝屼笖鍗充嬌鐢ㄦ埛鎯蟲妸褰撳墠鐨勭綉欏靛唴瀹瑰姞鍏ユ敹钘忓す錛屼篃鏄笉鍙兘鐨勶紝鍥犱負鏀惰棌澶逛笉浼氳褰曠綉欏電▼搴忚繍 琛岀殑鐘舵侊紝鑰屽彧浼氱畝鍗曠殑璁板綍涓嬬綉欏電▼搴忕殑鍦板潃錛圲RL錛夈?/p>
寮鍙戣呭彲浠ヤ嬌鐢╠ojo.undo.browser鍖呭緱鍒扮敤鎴風偣鍑誨悗閫鍜屽墠榪涚殑浜嬩歡錛坋vent錛夛紝鐒跺悗鏍規嵁榪欎簺浜嬩歡鏉ユ洿鏂伴〉闈㈠唴瀹廣? dojo.undo.browser閫氳繃浣跨敤涓涓殣钘忕殑琛ㄥ崟錛坔idden IFRAME錛夋垨鑰呬竴涓敮涓鐨勬爣絳撅紙fragment identifier錛変紶閫掓祻瑙堢殑鍘嗗彶璁板綍銆傦紙璇戣呮敞錛氬彲浠ユ兂鍍忔垚涓涓猚ookie鎴栬呬竴涓猻ession錛屼絾鏄繖涓猻ession淇℃伅鏄瓨鍌ㄥ湪hidden IFRAME鎴栬呮爣絳句腑錛?渚嬪錛?/p>
http://some.domain.com/my/path/to/page.html#fragmentIdentifier
錛?font color="#990000">璇戣呮敞錛?fragmentIdentifier灝辨槸鏍囩璁板綍錛?/font>
鍥犱負褰撴敼鍙樻爣絳劇殑鏃跺欏茍涓嶄細浣跨綉欏靛埛鏂幫紝鎵浠ラ潪甯擱傚悎璁板綍褰撳墠緗戦〉紼嬪簭鐨勭姸鎬併傚綋鐒跺紑鍙戣呭彲浠ヨ嚜瀹氫箟涓涓洿瀹規槗璇繪噦鐨勬爣絳撅紝騫朵笖浣跨敤鎴峰彲浠ユ妸瀹冨姞鍏ユ敹钘忓す銆?/p>
dojo.undo.browser鍏佽寮鍙戣呭垱寤轟竴涓浉瀵逛簬榪愯鐘舵佺殑瀵硅薄錛坰tate object錛夛紝榪欎釜瀵硅薄浼氬緱鍒板洖鍙紙callback錛夊綋鐢ㄦ埛鐐瑰嚮鍚庨鎴栬呭墠榪涙寜閽?/p>
寮鍙?/strong>
涓嬮潰鏄嬌鐢╠ojo.undo.browser涔嬪墠蹇呴』浣滅殑涓浜涗簨鎯咃細
1錛氬湪djConfig涓緗?strong>preventBackButtonFix: false銆傝繖鏍蜂繚璇佷簡闅愯棌鐨勮〃鍗曪紙hidden IFRAME錛夊皢浼氭坊鍔犲埌欏甸潰褰撲腑錛屽鏋滀笉鍔犲叆榪欐錛宒ojo.undo.browser涓嶄細姝e父宸ヤ綔銆?/p>
璇戣呮敞錛氳緗柟娉曞氨鏄湪header涓姞鍏ュ涓嬩唬鐮侊細
<script language="JavaScript" type="text/javascript">
djConfig = { isDebug: true, preventBackButtonFix: false };
</script>2: 鍔犲叆dojo.require("dojo.undo.browser");
璁懼畾緗戦〉紼嬪簭鐨勫垵濮嬬姸鎬侊細
dojo.undo.browser.setInitialState(state);
褰撶敤鎴鋒瘡嬈$偣鍑誨墠榪涙垨鑰呭悗閫錛宻tate瀵硅薄閮戒細琚皟鐢ㄣ?/p>
鐒跺悗鎴戜滑闇瑕佺粰state瀵硅薄鍒涘緩鍑犱釜鏂規硶錛坒unction錛?/p>
- 寰楀埌鍚庨鎻愮ず錛?strong>back錛堬級錛?strong>backButtion錛堬級鎴栬?strong>handle錛坱ype錛?/strong>錛宼ype鍙互鏄渂ack鈥濇垨鑰呮槸鈥渇orward鈥濄?/li>
- 寰楀埌鍓嶈繘鎻愮ず錛?strong>forward錛堬級錛宖orwardButton錛堬級鎴栬?strong>handle(type錛?/strong>錛宼ype濡備笂銆?/li>
涓嬮潰鏄釜綆鍗曠殑渚嬪瓙錛?/p>
var state = {
back: function() { alert("Back was clicked!"); },
forward: function() { alert("Forward was clicked!"); }
};娉ㄥ唽涓涓猻tate瀵硅薄浣跨敤涓嬮潰鐨勬柟娉曪細
dojo.undo.browser.addToHistory(state);
濡? 鏋滃悜鏀瑰彉嫻忚鍣ㄧ殑鍦板潃錛圲RL錛夛紝寮曠敤state瀵硅薄鐨刢hangeUrl灞炴с傚鏋渃hangeUrl鏄痶rue錛宒ojo.undo.browser 灝卞皢浜х敓涓涓敮涓鐨勬爣絳撅紝濡傛灉changeUrl琚畾涔変負浠諱綍鍏朵粬鐨勫鹼紙涓嶅寘鎷瑄ndefined錛宯ull錛?鍜岀┖string錛夛紝閭d箞榪欎釜鍊煎氨浼氳浣? 鐢ㄤ負鏍囩銆傝繖鏍風敤鎴峰氨鍙互鎶婂綋鍓嶉〉鍔犲叆鏀惰棌澶逛簡銆?/p>
鎻愮ず
- 濡傛灉浣犺浣跨敤changeUrl錛屽嵆浣夸綘涓嶈瀹氳嚜宸辯殑鏍囩錛屼篃鑷沖皯瀹氫箟涓簍rue銆?/li>
- 濡傛灉浣犺鍦ㄦ湰鏈烘祴璇曪紝涓嶈浣跨敤IE銆傚洜涓哄綋IE璁塊棶鏈湴鏂囦歡鏃朵笉浼氬垱寤哄巻鍙插垪琛╥fram_history.html銆傝鎶婄綉欏典笂浼犲埌鏈嶅姟鍣ㄤ笂嫻嬭瘯銆?/li>
- Safari2.0.3+錛氬彧鏈夊悗閫鎸夐挳鍙互姝e父宸ヤ綔錛屽茍涓斿彧鏈夊綋changeUrl娌$敤浣跨敤鐨勬椂鍊欍?/li>
- Opera 8.5.3錛氫笉浼氭甯歌繍琛屻?/li>
榪欓噷鏈変竴涓綉涓婄殑渚嬪瓙錛?/p>
http://archive.dojotoolkit.org/nightly/tests/undo/test_browser.html
鍙戝竷Dojo
璇戣呮敞錛氭閮ㄥ垎鐨勮嫳鏂囩増榪樻病鏈夊畬鎴愶紝鎵浠ユ殏涓嶇炕璇戜簡錛屼互鍚庝竴瀹氫細琛ヤ笂銆?/font>
6鏈?7鏃ユ洿鏂幫細
I/O
dojo.io.blind浠嬬粛
鍦ㄦ垜浠埗浣渄ojo鐨勬椂鍊欙紝鐩殑鏄鐢ㄦ埛鍜屽紑鍙戣呴兘鑳戒韓鍙楀埌DHTML紼嬪簭銆傚湪寰堝鏈嬪弸鐨勬敮鎸佷笅錛岀壒鍒槸Aaron
Boodman鍜孧ark Anderson錛屾垜浠凡緇忔壘鍒頒簡瑙e喅鍙敤鎬х殑鏂規硶銆傛垜浠彁渚涗簡涓涓崟鐙殑鏄撶敤鐨凙PI鍜屼竴涓寘瑁呯被錛岃繖涓被鍙渶瑕佷袱涓枃浠躲俤ojo.io鍖呮彁渚涗簡瀵筙MLHTTP鍜屼竴浜涘叾浠栨洿澶嶆潅鐨勪紶杈撶粨鏋勭殑鏀寔銆?br />
鍦╠ojo.io
鍖呬腑鎴戜滑涓鑸渶甯鎬嬌鐢ㄧ殑鏄痙ojo.io.bind()鏂規硶銆俤ojo.io.blind()鏄竴涓爣鍑嗙殑寮傛鐨勮姹侫PI錛屽畠鍖呭惈浜嗗悇縐嶄紶杈撳眰
錛坱ransport layers錛夛紝鍖呮嫭queues of
iFrames,XMLHTTP,mod_pubsub,LivePage絳夌瓑銆侱ojo浼氳瘯鍥句負褰撳墠鐨勮姹傞夋嫨鏈鍚堥傜殑浼犺緭鏂規硶錛屽洜涓哄湪鍋氱綉绔欐椂涓鑸笉
浼氫嬌鐢ㄥ埌鍏朵粬浼犺緭錛屾墍浠ユ垜浠彧鐢ㄥ埌XMLHTTP銆俤ojo鎺ュ彈涓涓尶鍚嶇殑綾伙紝浣嗘槸鍦ㄧ煡閬撹繖涓被鐨勫睘鎬х殑鎯呭喌涓嬶紝鎶婂畠浣滀負鏂規硶鍙傛暟錛坒unction
argument錛夈備笅闈㈢殑浠g爜鏄垱寤轟竴涓姹傦紙request錛夛紝榪欎釜璇鋒眰浼氫粠URL榪斿洖鍘熷鐨勫瓧絎︿覆銆?br />
榪欐槸鎴戠涓緲昏瘧錛屾湁浠涔堥敊鍒瓧錛岃〃杈句笉鏄庣‘榪樺笇鏈涚悊瑙c?/p>
濡傛灉鏈変粈涔堟剰瑙佹垨鑰呭緩璁紝璇風暀璦錛岃阿璋紒
鍋氫漢瑕佸帤閬擄紝杞澆璇瘋憲鍚嶄笓鑷?a href="/burnet/" target="_blank">Burnet's Blog銆?/font>