導航:首頁 > 編程語言 > js監聽dom

js監聽dom

發布時間:2023-06-11 13:04:53

1. javascript 事件監聽是什麼

1、事件監聽的定義

在Javascript中,瀏覽器一般分為兩大類:

① 基於IE內核的瀏覽器(版本號小於9的IE瀏覽器)

② 基於W3C內核的瀏覽器(版本號大於9的IE瀏覽器、Firefox、Google等瀏覽器)

1)基本語法:基於IE內核瀏覽器

dom對象.attachEvent(type,callback,capture) :為元素綁定事件監聽程序

參數說明:

type:綁定的事件類型,如onclick、onmouseover、onmouseout

callback:事件的處理程序,通常是一個匿名函數

capture:使用的瀏覽器模型,冒泡模型與捕獲模型,默認IE8以下的瀏覽器只支持冒泡模型!

2)基本語法:基於W3C內核的事件監聽

dom對象.addEventListener(type,callback) :為W3C內核瀏覽器綁定事件監聽

參數說明:

type:綁定事件類型,不帶』on』前綴,如click,mouseover,mouseout

callback:事件的處理程序,通常是一個匿名函數

3、總結事件監聽的區別

IE內核的監聽方式與W3C內核的監聽方式:

①方式不同

IE內核的瀏覽器使用attachEvent進行綁定

W3C內核的瀏覽器使用addEventListener進行綁定

②參數不同

IE內核瀏覽器,其綁定方式一共有三個參數type,callback,capture(使用的瀏覽器模型)

W3C內核瀏覽器,其綁定方式一共有二個參數,type和callback

③type參數不同

IE內核的瀏覽器,type是需要添加』on』前綴的,如onclick

W3C內核瀏覽器,type是不需要添加』on』前綴的,如click

④觸發順序不同

IE內核的瀏覽器,其事件監聽是先綁定後觸發,後綁定的先觸發

W3C內核的瀏覽器,其事件監聽是先綁定先觸發,後綁定的後觸發

2. js 怎麼給dom添加監聽

給dom元素添加事件來監聽一般有兩源種方式:

一、函數
<inputtype="button"onclick="clickme()"id="clickme"value="點擊我">

<script>
functionclickme(){
alert("我被點擊了");
}
</script>


二、為指定對象添加事件處理
<inputtype="button"onclick="clickme()"id="clickme"value="點擊我">

<script>
document.getElementById("clickme").onclick=function(){
alert("helloworld");
}
</script>

3. js監聽橫向滾動條事件

你要監聽的對象錯誤了。你要監聽的是fixedDom

varfixedDom=document.getElementById('fixed');
fixedDom.addEventListener('scroll',winScroll,false);
functionwinScroll(e){
debugger
if(fixedDom.offsetLeft<document.body.scrollLeft){

};
if(fixedDom.offsetLeft>document.body.scrollLeft){

};
}

4. 在js中如何觸發dom結點上的監聽事件

DHTML的API是有click方法用來觸發點擊事件的,但是沒有移動方法來觸發移動事件,你可以用fireEvent("onclick");方法來指定觸發的事件進行觸發!

5. js 有沒有辦法 判斷一個dom元素是否已經綁定了某個事件

js 有辦法 判斷一個dom元素是否已經綁定了某個事件!
代碼如下:

/*
* 事件注冊
* @param Element ele
* @param String eventType
* @param Function fn
* @param Boolean isRepeat
* @param Boolean isCaptureCatch
* @return undefined
*/
function loginEvent(ele , eventType , fn , isRepeat , isCaptureCatch){
if (ele == undefined || eventType === undefined || fn === undefined) {
throw new Error('傳入的參數錯誤!');
}

if (typeof ele !== 'object') {
throw new TypeError('不是對象!');
}

if (typeof eventType !== 'string') {
throw new TypeError('事件類型錯誤!');
}

if (typeof fn !== 'function') {
throw new TypeError('fn 不是函數!');
}

if (isCaptureCatch === undefined || typeof isCaptureCatch !== 'boolean') {
isCaptureCatch = false;
}

if (isRepeat === undefined || typeof isRepeat !== 'boolean') {
isRepeat = true;
}

if (ele.eventList === undefined) {
ele.eventList = {};
}

if (isRepeat === false) {
for (var key in ele.eventList)
{
if (key === eventType) {
return '該事件已經綁定過!';
}
}
}

// 添加事件監聽
if (ele.addEventListener) {
ele.addEventListener(eventType , fn , isCaptureCatch);
} else if (ele.attachEvent) {
ele.attachEvent('on' + eventType , fn);
} else {
return false;
}

ele.eventList[eventType] = true;
}

6. js為元素添加監聽事件

語法
element.addEventListener(event, function, useCapture);
第一個參數是事件的類型(比如 "click" 或 "mousedown")。

第二個參數是當事件發生時我們需要調用的函數。

第三個參數是布爾值,指定使用事件冒泡還是事件捕獲。此參數是可選的。

注意:請勿對事件使用 "on" 前綴;請使用 "click" 代替 "onclick"。

addEventListener可以對一個dom添加多個監聽器,並且會順序執行。

開發中,會遇到多個js文件都使用window.onload,然而只有最後一個綁定的生效,如下:
window.onload = func1();
window.onload = func2();

這時可以用addEventListener來解決:
window.addEventListener('load', func1);
window.addEventListener('load', func2);

7. js如何清除dom節點上的指定監聽事件

親。你第一個「nihao」 用的jquery綁定的。 你刪除不能用原生的javascript刪除。
可以$('#myBtn').unbind("click")
如果是原生的javascript,添專加事件用 addEventListener , attachEvent 和屬removeEventListener,detachEvent 添加和刪除。

8. 怎樣理解js中的事件監聽

js的監聽事件就是相當於注冊一個監聽器,隨時檢測對應事件有沒有發生,如果發生了自動調用定義好的函數來處理。

一般情況下 監聽事件是對應於dom元素而言的,同時也需要聲明所監聽事件種類。
比如可以為一個按鈕設置監聽事件,點擊之後自動調用相應函數處理。
同時可以在用函數處理時使用事件對象(event object)來獲得關於觸發這個事件的對象的信息。

閱讀全文

與js監聽dom相關的資料

熱點內容
dede工具 瀏覽:507
5g網盟app怎麼下載 瀏覽:486
微信備份老是連接中斷 瀏覽:886
出台多少份文件 瀏覽:380
鞋子怎麼搭配衣服的app 瀏覽:755
文件名使用的通配符的符號是什麼 瀏覽:916
lol分卷文件損壞怎麼辦 瀏覽:276
6分管車螺紋怎麼編程 瀏覽:732
海口農商銀行信用卡app是什麼 瀏覽:770
win10任務欄文件夾我的電腦 瀏覽:14
安卓nba2k18 瀏覽:776
文件夾密碼怎麼修改密碼 瀏覽:271
蘋果數據中心用什麼伺服器 瀏覽:769
省內圓通快遞寄文件夾需要多少錢 瀏覽:740
iphone程序加密 瀏覽:884
win10文件夾調整文件行高 瀏覽:681
創意手繪教程 瀏覽:754
微信刪除帳號信息 瀏覽:596
mysql操作類文件 瀏覽:649
繞過xp密碼 瀏覽:158

友情鏈接