<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一宅男色影视| 久久亚洲国产中v天仙www| 亚洲国产综合精品| 日韩免费电影网站| 久久久久亚洲精品成人网小说| 国产精品高清免费网站| 国产成人精品曰本亚洲79ren| 一级特黄色毛片免费看| 久久久久国产亚洲AV麻豆| 成人av片无码免费天天看| 亚洲伊人久久精品影院| 99在线视频免费观看| 亚洲国产二区三区久久| 亚洲高清免费在线观看| 中国亚洲呦女专区| 又粗又大又硬又爽的免费视频| 一级毛片成人免费看a| 亚洲美女又黄又爽在线观看| 精品无码国产污污污免费网站| 亚洲第一页在线视频| 四虎影视免费在线| 免费福利资源站在线视频| 亚洲精品成人片在线观看精品字幕| 免费福利在线视频| 激情亚洲一区国产精品| 国产免费卡一卡三卡乱码| a一级毛片免费高清在线| 亚洲精品网站在线观看你懂的| 成人免费无码视频在线网站| 春意影院午夜爽爽爽免费| 久久久久亚洲精品影视| 午夜小视频免费观看| 中文字幕在线视频免费观看| 亚洲国产成人精品无码区在线秒播 | 亚洲啪啪AV无码片| 国产又黄又爽又猛免费app| 边摸边吃奶边做爽免费视频99| 久久香蕉国产线看观看亚洲片| 成人免费无码大片A毛片抽搐| 国产成人无码免费网站| 亚洲熟女精品中文字幕|