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

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

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

    posts - 101,  comments - 29,  trackbacks - 0

     前段時間學JavaScript,最先學的就是如何建立自己的JavaScript函數庫,在我看來,函數就是程序活的靈魂,在此簡單介紹一下如何建立自己的JavaScript函數庫。

    原則:

            不要版本檢測:常用瀏覽器一般是IE、firefox、safari、opera、google,不能為了追求兼容而嗅探當前瀏覽器進而選擇運行模式。

            最好是能力檢測:即在代碼執行之前,檢測使用的某個腳本或是對象是否存在,而不是依賴于哪種瀏覽器,例如:

                 if (document.body&&document.body.getElementsByTagName) {//如果document.body 與getElementsByTagName存在
                         //使用document.body.getElementsByTagName代碼
                 }

         使用命名空間:javascript支持多次聲明同名函數,但是只能使用最后聲明的版本,為了確保不相抵觸,需要使用命名空間來區別同名函數。使用命名空間分需要注意兩點:唯一和不共享,唯一即命名空間命名唯一,例如google加G,我自己的加LD;不共享即什么都不共享包括名稱、變量等,為了防止自己的$函數和prototype中的沖突,可以使用如下方法:
    (function(){
        //自己的代碼
    })();
    // JavaScript Document
    (function(){
              function $(){
                  alert ("正在Buffering!");//提示正在緩沖
                  }
                  window['LD']={}//把LD命名空間加到window
                  window['LD']['$']=$;把$函數加到LD
    }
    )(); 

    JavaScript函數庫實例

    [javascript] view plaincopy
    1. (function () {  
    2.         window['LD'] = {}; //將命名空間寫到window上  
    3.         function $() {//獲取elements  
    4.                 var elements = new Array();  
    5.                 for (var i = 0; i < arguments.length; i++) {  
    6.                         var element = arguments[i]; //賦值element參數數組值   
    7.                         if (typeof element == 'string') {  
    8.                                 element = document.getElementById(element);  
    9.                         }  
    10.                         if (arguments.length == 1) {  
    11.                                 return element;  
    12.                         }  
    13.                         elements.push(element);  
    14.                 }  
    15.                 return elements;  
    16.         };  
    17.         function getElementsByClassName() {  
    18.                 //TODO  
    19.         };  
    20.         window['LD']['$'] = $; //將函數寫到window下的LD下  
    21.         window['LD']['getElementsByClassName'] = getElementsByClassName; //將新的getElementsByClassName添加到LD下  
    22. })()  
            head:
    [javascript] view plaincopy
    1. <head>  
    2.         <script src="LD.js" type="text/javascript"></script>  
    3.         <script type="text/javascript">  
    4.                 function cclick() {  
    5.                         var testInput = LD.$("Text1""Text2");  
    6.                         for (var i = 0; i < testInput.length; i++) {  
    7.                                 alert(testInput[i].value);//彈出其內容  
    8.                         }  
    9.                 }  
    10.           </script>  
    11. <title></title>  
    12. </head>  
            body:
    [javascript] view plaincopy
    1. <body onload ="LD.$();">  
    2.         <p>  
    3.                 <input id="Text2" type="text" value="廊坊" />  
    4.                 <input id="Text1" type="text"  value="提高班" />  
    5.         </p>  
    6.         <p>  
    7.                 <input id="Button1" type="button" value="點我"  onclick="cclick();" />  
    8.         </p>  
    9. </body>  
            運行結果:

            這只是最基本的自建函數庫,更多的自建函數還等待我的積累。

    posted on 2012-06-27 23:01 mixer-a 閱讀(845) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 四虎免费永久在线播放| 亚洲av片劲爆在线观看| 成人国产精品免费视频| 午夜成人无码福利免费视频| 无码国产精品一区二区免费式芒果| 精品亚洲综合久久中文字幕| 国产精品亚洲精品日韩动图| 国产精品久久久久久久久免费| 狠狠色香婷婷久久亚洲精品| 98精品全国免费观看视频| 波多野结衣亚洲一级| 亚洲AV中文无码乱人伦| 亚洲黄色免费在线观看| 美女视频黄a视频全免费网站一区| 免费视频专区一国产盗摄| 免费一级毛suv好看的国产网站| 全免费a级毛片免费看无码| 3344在线看片免费| 国产偷窥女洗浴在线观看亚洲| 在线观看www日本免费网站| 深夜特黄a级毛片免费播放| 亚洲欧洲日韩综合| 亚洲国产美女精品久久久久∴| 午夜无遮挡羞羞漫画免费| 色欲色香天天天综合网站免费 | 国产成人aaa在线视频免费观看| 久久精品无码专区免费东京热| 亚洲最新永久在线观看| 一级毛片aaaaaa免费看| 9i9精品国产免费久久| 看一级毛片免费观看视频| 亚洲色成人四虎在线观看| 亚洲电影日韩精品| 四虎影视精品永久免费| 永久免费看bbb| 成人爱做日本视频免费| 91在线品视觉盛宴免费| 6080午夜一级毛片免费看| 99re免费99re在线视频手机版| 精品视频在线免费观看| 亚洲免费二区三区|