成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? 淺析jquery unbind()方法移除元素綁定的事件
全站頭部文字 我要出現(xiàn)在這里
淺析jquery unbind()方法移除元素綁定的事件 738 2024-03-03   

unbind()方法可以移除元素已綁定的事件,它的調用格式如下:

$(selector).unbind(event,fun)

其中參數(shù)event表示需要移除的事件名稱,多個事件名用空格隔開,fun參數(shù)為事件執(zhí)行時調用的函數(shù)名稱。

語法

unbind()函數(shù)主要有以下兩種形式的用法:

用法一:

jQueryObject.unbind( [ events [, handler ]] )

移除當前匹配元素的events事件綁定的事件處理函數(shù)handler。

用法二:

jQueryObject.unbind( eventObject )

為指定事件處理函數(shù)傳入的Event對象,用于移除對應的事件處理函數(shù)。

參數(shù)

參數(shù) 描述

events 可選/String類型一個或多個用空格分隔的事件類型和可選的命名空間,例如"click"、"focus click"、"keydown.myPlugin"。

handler 可選/Function類型指定的事件處理函數(shù)。

eventObject Object類型一個Event對象,用于移除傳入該對象的事件處理函數(shù)。

jQuery 1.4.3 新增支持參數(shù)handler可以為false。用于移除綁定事件時,handler參數(shù)為false值的事件處理函數(shù)。

如果省略參數(shù)handler,則移除匹配元素指定類型的事件上綁定的所有事件處理函數(shù)。

如果省略了所有參數(shù),則表示移除匹配元素上為任何元素綁定的任何事件類型的任何事件處理函數(shù)。

返回值

unbind()函數(shù)的返回值為jQuery類型,返回當前jQuery對象本身。

實際上,unbind()函數(shù)的參數(shù)全是篩選條件,只有匹配所有參數(shù)條件的事件處理函數(shù)都將被移除。參數(shù)越多,限定條件就越多,被移除的范圍就越小。

示例&說明

請參考下面這段初始HTML代碼:

<input id="btn1" type="button" value="點擊1" /> 
<input id="btn2" type="button" value="點擊2" /> 
<a id="a1" >CodePlayer</a> 

首先,我們?yōu)樯鲜鯾utton和<a>元素綁定事件,然后使用unbind()函數(shù)解除事件綁定,相應的代碼如下:

function btnClick1(){ 
  alert( this.value + "-1" ); 
} 
 
function btnClick2(){ 
  alert( this.value + "-2" ); 
} 
 
var $buttons = $(":button"); 
 
// 為所有button元素的click事件綁定事件處理函數(shù)btnClick1 
$buttons.bind( "click", btnClick1 ); 
 
// 為所有button元素的click事件綁定事件處理函數(shù)btnClick2 
$buttons.bind( "click", btnClick2 ); 
 
// 為所有a元素的click、mouseover、mouseleave事件綁定事件處理函數(shù) 
$("a").bind( "click mouseover mouseleave", function(event){ 
  if( event.type == "click" ){ 
    alert("點擊事件"); 
  }else if( event.type == "mouseover" ){ 
    $(this).css("color", "red"); 
  }else{ 
    $(this).css("color", "blue");    
  } 
}); 
 
 
// 移除為所有button元素的click事件綁定的事件處理函數(shù)btnClick2 
// 點擊按鈕,只執(zhí)行btnClick1 
$buttons.unbind("click", btnClick2); 
 
 
// 移除為所有button元素的click事件綁定的所有事件處理函數(shù)(btnClick1和btnClick2) 
// 點擊按鈕,不會執(zhí)行任何事件處理函數(shù) 
// $buttons.unbind("click"); 
 
 
// 只移除為btn1元素的click事件綁定的所有事件處理函數(shù) 
 // btn2元素的click事件仍然有效 
// $("#btn1").unbind("click"); 
 
// 移除為所有a元素的任何事件綁定的所有處理函數(shù) 
// 點擊鏈接,或用鼠標在鏈接上移入、移出,都不會觸發(fā)執(zhí)行任何事件處理函數(shù) 
// $("a").unbind( ); 
unbind()函數(shù)還可以根據(jù)傳入的事件對象來移除函數(shù)。以下jQuery代碼只允許第一次點擊按鈕【點擊1】時彈出提示框,之后立即移除該點擊事件。
var $btn1 = $("#btn1"); 
$btn1.bind("click", function(event){ 
  alert("只執(zhí)行一次!"); 
  $(this).unbind( event ); // 移除當前事件處理函數(shù)  
}); 
此外,unbind()函數(shù)還可以只移除指定命名空間的事件綁定。 
 
var $buttons = $(":button"); 
 
// 為所有button元素的click事件綁定事件處理函數(shù) 
$buttons.bind( "click.foo.bar", function btnClick1(){ 
  alert( "click-1" ); 
} ); 
 
// 為所有button元素的click事件綁定事件處理函數(shù) 
$buttons.bind( "click.test.bar", function btnClick1(){ 
  alert( "click-2" ); 
} ); 
 
 
// 移除包含命名空間foo的click事件綁定的事件處理函數(shù) 
$buttons.unbind( "click.foo" ); // 移除click-1 
 
//移除包含命名空間bar的click事件綁定的事件處理函數(shù) 
// $buttons.unbind( "click.bar" ); // 移除click-1和click-2 
 
//移除包含命名空間test的click事件綁定的事件處理函數(shù) 
// $buttons.unbind( "click.test" ); // 移除click-2 
 
// 移除所有button元素的click事件綁定的所有事件處理函數(shù) 
// $buttons.unbind("click"); // 移除click-1和click-2 

以上這篇淺析jquery unbind()方法移除元素綁定的事件就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持綠夏網(wǎng)。


主站蜘蛛池模板: 老炮儿演员表| 李天方| 87版七仙女台湾| 红海行动2虎鲸行动| 人流后吃什么| 特种部队电影全集观看| 密会韩剧| 爱在线观看| 韩国电影《我是谁》演员表介绍| 美女网站视频免费| 涡轮增压黄鹤楼| 赌侠演员表大全| 视频污污| 姐妹微电影| 影音先锋欧美| 无限资源日本好片| 河南卫视直播| 绿雾影视| 难忘的运动会作文| 诈欺游戏电影| 伦理<禁忌1| 黄网站免费在线观看| 江苏诗歌网| 爱情面包房| 防冲撞应急处置预案| 礼佛三拜正确动作视频| 幸福院 电视剧| 珠江电视台直播 珠江频道| 八年级上册英语课堂作业答案| 电影林海雪原| 妈妈的朋友未删减版| 胃疼呕吐视频实拍| 处女膜视频| psv游戏| 班娜娃·黑玛尼| 零下100度| jjdd| 尹雪喜最惊艳的十部电视剧| 周末的一天| 碑文格式范例 墓碑图片| 《保姆妈妈》电视剧|

!!!站長長期在線接!!!

網(wǎng)站、小程序:定制開發(fā)/二次開發(fā)/仿制開發(fā)等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103