<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    super

    DOJO.widget的性能問題

    對DOJO基本上算是文盲,只是項(xiàng)目中需要一些特效頁面,在網(wǎng)上找了找,感覺DOJO做的不錯,就拿過來用了,不過感覺性能很不好,頁面刷新明顯遲鈍

    ???我的頁面上大概有10幾個DOJO,刷一次頁面僅僅因?yàn)镈OJO的widget的初始化的問題就要5-6秒鐘,讀了一下DOJO的代碼,只要的時(shí)間都花費(fèi)在dojo.hostenv.makeWidgets這個方法中,本人的js水平比較低,基本上改不了DOJO的代碼,不過在這個方法中卻找到了一個稍微提高些性能的辦法,這就是 djConfig.searchIds的使用。

    dojo.hostenv.makeWidgets = function(){
    ?// you can put searchIds in djConfig and dojo.hostenv at the moment
    ?// we should probably eventually move to one or the other
    ?var sids = [];
    ?if(djConfig.searchIds && djConfig.searchIds.length > 0) {
    ??sids = sids.concat(djConfig.searchIds);
    ?}
    ?if(dojo.hostenv.searchIds && dojo.hostenv.searchIds.length > 0) {
    ??sids = sids.concat(dojo.hostenv.searchIds);
    ?}

    ?if((djConfig.parseWidgets)||(sids.length > 0)){
    ??if(dojo.evalObjPath("dojo.widget.Parse")){
    ???// we must do this on a delay to avoid:
    ???//?http://www.shaftek.org/blog/archives/000212.html
    ???// IE is such a tremendous peice of shit.
    ????var parser = new dojo.xml.Parse();
    ????if(sids.length > 0){
    ?????for(var x=0; x<sids.length; x++){
    ??????var tmpNode = document.getElementById(sids[x]);
    ??????if(!tmpNode){ continue; }
    ??????var frag = parser.parseElement(tmpNode, null, true);
    ??????dojo.widget.getParser().createComponents(frag);
    ?????}
    ????}else if(djConfig.parseWidgets){
    ?????var frag? = parser.parseElement(document.getElementsByTagName("body")[0] || document.body, null, true);
    ?????dojo.widget.getParser().createComponents(frag);
    ????}
    ??}
    ?}
    }

    具體使用方法就是在自己的頁面上把所有的dojo的widget都要定義ID,類似這樣

    <input id="queryStr_0" name="queryStr_0" dojoType="ComboBox" style="width:280px;" autocomplete="false" >


    然后加上這樣一段js
    <script language=javascript>
    ?djConfig.searchIds=['queryStr_0','queryStr_1','queryStr_2'];
    </script>
    這里的'queryStr_0'之類的就是你的widget的ID,這樣對于我的10幾個widget的頁面,速度基本上會快上1-2倍。


    posted on 2006-12-12 17:46 王衛(wèi)華 閱讀(1423) 評論(1)  編輯  收藏

    Feedback

    # re: DOJO.widget的性能問題 2007-07-04 17:49 匿名

    其實(shí)并不是遲鈍,而是,當(dāng)dojo第一次加載的時(shí)候在渲染它的信息,然后把一些數(shù)據(jù)緩存,當(dāng)你再次訪問的時(shí)候速度就會好一些  回復(fù)  更多評論   



    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 免费爱爱的视频太爽了| 中文字幕人成无码免费视频| 四虎影视在线永久免费观看| 亚洲一区二区三区在线观看网站| 国产大片91精品免费观看不卡| 亚洲综合免费视频| 91短视频免费在线观看| 亚洲精品福利视频| 毛片免费全部播放无码| 亚洲精品第一国产综合精品| 日本免费xxxx| 亚洲综合无码无在线观看| 国产男女猛烈无遮挡免费视频 | 亚洲精品视频免费在线观看| 亚洲色图综合网站| 国产精品久久久久免费a∨| 最新亚洲春色Av无码专区| 免费看a级黄色片| 西西人体大胆免费视频| 中文亚洲AV片不卡在线观看| 高清一区二区三区免费视频| 亚洲欧洲日产韩国在线| 成人性生免费视频| 一级做a爰片久久毛片免费看| 亚洲av无码国产精品夜色午夜| h视频在线观看免费完整版| 国产精品亚洲综合久久| 亚洲不卡无码av中文字幕| 国产无遮挡无码视频免费软件| 亚洲国产成人资源在线软件| 免费无码又爽又高潮视频| eeuss在线兵区免费观看| 中文字幕亚洲综合久久| 日韩黄色免费观看| 国产精品99精品久久免费| 日韩亚洲人成在线| 在线观看午夜亚洲一区| 无码国产精品一区二区免费虚拟VR| 国产青草亚洲香蕉精品久久| 亚洲av无码乱码国产精品| 妞干网在线免费观看|