您好,登錄后才能下訂單哦!
小編給大家分享一下JavaScript中的事件進行綁定與解除的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
JavaScript中的事件表示當我們點擊某個 HTML 元素時啟動一段 JavaScript,從而觸發瀏覽器的行為,我們常常需要用到事件的綁定,接下來將和大家詳細分享幾種常見的事件綁定方法以及如何解除綁定
事件綁定
onclick事件
指鼠標按下時對象被觸發,一個元素只能綁定一個事件
當鼠標點擊方塊時改變它的背景顏色
window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.onclick=function(){ div.style.backgroundColor="pink"; console.log(1); } }
addEventListener(event, function, useCapture)
指向指定元素添加事件句柄,可以添加多個事件,IE9以下不兼容
event:指定事件名,以字符串的形式存在
function:指事件觸發時所執行的函數
useCapture:布爾值,說明事件是否在捕獲或者冒泡階段執行,其中true代表事件句柄在捕獲階段執行,false代表事件句柄在冒泡階段執行,其中false代表默認值
window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.addEventListener('click',function(){ div.style.backgroundColor="pink"; },false); }//用addEventListener綁定一個click事件,當點擊時使背景顏色改變
注意:在寫事件時注意不要寫on,直接寫click大多數情況下寫false
attachEvent(event, function)
一個事件可以綁定多個處理程序,同一個函數也可以綁定多次是IE 獨有的
event:需要綁定的事件的類型,注意要以on開頭
function:指事件觸發時所執行的函數
window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.attachEvent('onclick',function(){ div.style.backgroundColor="pink"; }); }
注意:程序的運行一定要在IE瀏覽器下。
解除事件綁定
onclick =false/null
onclick事件的解綁通過令它的值為false或者為null解除
window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.onclick=function(){ div.style.backgroundColor="pink"; } div.onclick=null;
removeEventListener(event, function, useCapture)
用于解除綁定了addEventListener事件,注意在解除綁定時不能直接寫function,要將函數寫在外部
window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.addEventListener('click',demo,false); function demo(){ div.style.backgroundColor="pink"; } div.removeEventListener('click',demo,false); }//用addEventListener綁定一個click事件,當點擊時使背景顏色改變
detachEvent(event, function)
用于解除attachEvent事件,注意在解除綁定時不能直接寫function,要將函數寫在外部
window.onload=function(){ var div=document.getElementsByTagName("div")[0]; div.attachEvent('onclick',demo); function demo(){ div.style.backgroundColor="pink"; } div.detachEvent('onclick',demo); }
以上是JavaScript中的事件進行綁定與解除的方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。