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

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

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

    <html>
        
    <head>
            
    <title></title>
            
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
        
    </head>
        
    <body>
            
    <script type="text/javascript">
                $(document).ready(
    function () {
                    
    var array = [0123];

                    
    // 1.
                    /*
                    for(var index in array) {
                        $("#btn" + index).click(function() {
                            var item  = array[index];
                            alert(item);
                        });
                    }
    */
                    
    // 始終彈出3, 因為function() {} 并沒有被立即解析,直到調用的時候才被解析,這時index已經是3了。


                    
    // 2.
                    /*
                    for(var index in array) {
                        $("#btn" + index).click(function(i) {
                            var item  = array[i];
                            alert(item);
                        }(index));
                    }
    */
                    
    // 立即彈出0, 1, 2, 3,因為使用了function() {}(index)立即被解析,遇到alert,就立即彈出來了。


                    
    // 3.
                    /*for (var index in array) {
                        $("#btn" + index).click(function (i) {
                            return function () {
                                var item = array[i];
                                alert(item);
                            };
                        } (index));
                    }
    */
                    
    // 正確執行,點擊btn0,彈出0,點擊btn1,彈出1...
                    // 1.因為function(i) {}(index)是被立即解析的,所以i依次送入的是0, 1, 2, 3
                    // 2.內部沒有直接alert,是因為不想立即執行,想點擊時再執行,所以返回了一個函數出去。


                    
    // 4.
                    for (var index in array) {
                        $(
    "#btn" + index).bind("click", {index: index}, clickHandler);
                    }

                    
    function clickHandler(event) {
                        
    var index = event.data.index;
                        
    var item = array[index];
                        alert(item);
                    }
                    
    // 正確執行,點擊btn0,彈出0,點擊btn1,彈出1...
                    // 利用了event.data,因為index在綁定的時候已經被持久化到event.data中了,所以響應的時候我們可以取到。
                });
            
            
    </script>

            
    <input type="button" id="btn0" value="btn0" />
            
    <input type="button" id="btn1" value="btn1" />
            
    <input type="button" id="btn2" value="btn2" />
            
    <input type="button" id="btn3" value="btn3" />        
        
    </body>
    </html>
    posted on 2010-08-05 13:39 sanmao 閱讀(2637) 評論(1)  編輯  收藏

    FeedBack:
    # re: jquery循環綁定事件
    2014-06-12 16:28 | 凌渡辰風
    疑惑了很久的,看到此博文,理解了問題出現的原因!
    贊一個~  回復  更多評論
      

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


    網站導航:
     

    常用鏈接

    留言簿(5)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费看男人j放进女人j免费看| 最新亚洲人成无码网站| 永久免费av无码网站yy| 亚洲国产精品无码成人片久久 | 亚洲国产精品无码中文字| EEUSS影院WWW在线观看免费| 亚洲综合久久夜AV | 中文字幕免费在线视频| 亚洲AV成人无码久久精品老人| 免费人妻无码不卡中文字幕系 | 在线精品亚洲一区二区| 韩国18福利视频免费观看| 羞羞网站免费观看| 亚洲中文字幕无码日韩| 免费播放一区二区三区| 亚洲人成www在线播放| 国产小视频在线观看免费| 麻豆成人精品国产免费| 久久人午夜亚洲精品无码区| 久久精品免费一区二区| 亚洲www在线观看| 免费看国产精品麻豆| a毛片久久免费观看| 99久久亚洲综合精品成人网| 国产桃色在线成免费视频 | 亚洲深深色噜噜狠狠爱网站| 老汉精品免费AV在线播放| 亚洲AV无码无限在线观看不卡| 亚洲va中文字幕无码| 久久久久久一品道精品免费看| www.亚洲日本| 亚洲成a人片在线观看国产| 国产一区二区免费视频| 亚洲色大网站WWW永久网站| 亚洲中文字幕无码一久久区| 久久午夜免费视频| 中文字幕在线视频免费观看| 亚洲午夜成激人情在线影院| MM131亚洲国产美女久久| 99久久免费国产精品特黄| 国产VA免费精品高清在线|