對于控件的事件,jQuery已經(jīng)提供了豐富的方法,包括綁定、一次綁定、觸發(fā)等,阿拉今早看看叫一哪能用額伐,大蝦路古就可以了。

jQuery的綁定事件 " /> 久久七,日韩精品欧美,成人深夜视频

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

jQuery 相關控件的事件操作分解

今天突然對他的事件產(chǎn)生了興趣,先前也碰到過,也沒整理,今天有空就弄一下咯。

對于控件的事件,jQuery已經(jīng)提供了豐富的方法,包括綁定、一次綁定、觸發(fā)等,阿拉今早看看叫一哪能用額伐,大蝦路古就可以了。

jQuery的綁定事件非常方便,有bind、live、one還有它幫你把一些常用的事件給單獨了出來,比如控件的onclick事件,我們綁定onclick事件的時候只需要
復制代碼 代碼如下:
$("#testButton").click(function() {
alert("I'm Test Button");
});

就這樣我們在testButton這個按鈕上綁定了onclick事件,執(zhí)行alert語句。我們也可以使用$("#testButton").click();來觸發(fā)這個onclick事件,一切都非常ok啦。以上有點sb了,接下來看看取消事件。jQuery有unbind的方法,專門來取消綁定的,也就是取消事件,按照上面的例子的話,應該使用:$("#testButton").unbind("click");恩,看上去非常好,如果你的click有2個事件的話,你還可以使用unbind("click", fnName)來刪除特定函數(shù)的綁定。為什么有這個取消特定函數(shù)的方法呢,我們來看下例子,我們會發(fā)現(xiàn),Javascript的事件,跟C#的事件如出一轍,事件的綁定是疊加(+=) 而不是覆蓋。
復制代碼 代碼如下:
var Eat = function() {
alert("我要吃飯");
}

var PayMoney = function() {
alert("先付錢");
}

jQuery(document).ready(function() {
$("#testButton").click(Eat);
$("#testButton").bind("click", PayMoney);
});

通過上面的例子,我們發(fā)現(xiàn)會先彈出:“我要吃飯”緊接著會彈出“先付錢”,說明它的綁定是通過onclick+=fn進行的。我們修改下ready的方法:
復制代碼 代碼如下:
jQuery(document).ready(function() {
$("#testButton").click(Eat);
$("#testButton").unbind();
$("#testButton").bind("click", PayMoney);
});

又出錯了,呵呵,這次點擊按鈕的話,只會執(zhí)行PayMoney,不會執(zhí)行Eat,那如果把unbind()放在bind后面的話,這樣這個按鈕就不會起作用了。但如果我要去掉綁定的PayMoney方法呢?這時候我們應該這樣寫:
復制代碼 代碼如下:
jQuery(document).ready(function() {
$("#testButton").click(Eat);
$("#testButton").bind("click", PayMoney);
$("#testButton").unbind("click", PayMoney);
});

嘿嘿,跟bind其實一個樣,不過接下來你將看到一個bug(我不知道算不算),讓我們近距離體驗一下
復制代碼 代碼如下:
<input id="testButton" type="button" value="Test Button" onclick="Eat();" /> 
<script type="text/Javascript"> 
jQuery(document).ready(function() {
$("#testButton").unbind("click", Eat);
$("#testButton").unbind();
$("#testButton").bind("click", PayMoney);
});
</script> 

大家猜猜,會顯示什么?吃飯?付錢?答案是Eat -> PayMoney,啊!!!我這里取消了綁定,又刪除了特定的綁定,為什么還會執(zhí)行Eat呢?其中的原由要看jQuery的類庫了,我估計它只刪除了通過JQuery綁定的那些事件了,呵呵。那這時候我們該如何呢?好在jQuery有很多方法,其中一個就是attr,他是對Dom元素的屬性進行操作,我們利用attr來消除input上的click事件。 $("#testButton").attr("onclick", "");這樣就可以把onclick事件清除了,記住,attr上因為是元素的屬性,所以這里要寫 “onclick” 而不是click,因為click是jQuery封裝好的簡寫方式。好了,綁定就到這里了,弄個場景,大家也好記得住點:一日,老應、老趙、老陳出去吃飯,吃飽了,喝足了,準備付錢了,這時候
復制代碼 代碼如下:
:<head> 
    <script type="text/Javascript" src="jquery-1.2.6.min.js"></script> 
    <script type="text/Javascript"> 
        var PayMoney = function(name) {  
            alert(name + ":今天我請客,我來付錢");  
        }  
        jQuery(document).ready(function() {  
            $("#JeffreyPay").attr("onclick", "");  
            $("#JamesPay").attr("onclick", "");  
            $("#JeffreyPay").click(function() {  
                alert("。。。。這里不能刷卡");  
            });  
            $("#JeffreyPay").click(function() {  
                PayMoney("陳大");  
            });  
            $("#JamesPay").bind("click", function() {  
                alert("。。。。忘記帶錢包了");  
            });  
            $("#JamesPay").bind("click", $("#DlyingPay").attr("onclick"));  
        });  
    </script> 
</head> 
<body> 
    <input id="JeffreyPay" onclick="PayMoney('趙帥');" type="button" value="老趙付錢" /> 
    <input id="JamesPay" type="button" onclick="PayMoney('老應');" value="老應付錢" /> 
    <input id="DlyingPay" type="button" onclick="PayMoney('陳大');" value="老陳付錢" /> 
</body> 

以上內(nèi)容均為原創(chuàng),不要用在邪惡的地方哦。其實在綁定事件上還存在很多bug,大家可以稍微修改下上面的效果就會知道了,比如自動執(zhí)行,綁定失敗等,呵呵。

JavaScript技術jQuery 相關控件的事件操作分解,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美三级视频在线观看 | 亚洲香蕉久久综合网 | 99pao成人国产永久免费视频 | 国产男女爱视频在线观看 | 国产91久久精品 | 国产原创91| 日本zzzzwww大片免费 | 精品精拍国产日韩26u | 久久这里只有 | 91精品国产免费久久国语麻豆 | 97夜夜澡人人爽人人喊一欧美 | 深爱激情五月网 | 99久久精品免费看国产高清 | 一区二区在线精品免费视频 | 不卡视频一区二区 | 日韩午夜高清福利片在线观看 | 亚洲精品乱码国产精品乱码 | 97人人超人超人国产第一页 | 婷婷亚洲久悠悠色在线播放 | 色婷婷久久久swag精品 | 91madou麻豆 | 亚洲你我色 | 成年人在线观看视频 | 91精品国产高清 | 日本一区二区三区久久久久 | 国产激爽大片在线播放 | 在线视频综合网 | 综合免费一区二区三区 | 国产成人综合一区精品 | 伊人爱爱| 美女又爽又黄免费 | 伊人网站 | 黄色小视频在线免费看 | 国产真实伦在线视频免费观看 | 高清国产一区二区三区 | 婷婷激情综合 | 91精品国产丝袜白色高跟鞋 | 狠狠色婷婷丁香六月 | 六月激情婷婷 | 男女一级毛片免费视频看 | 视频在线国产 |