導航:首頁 > 編程語言 > 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相關的資料

熱點內容
linux系統csv文件打開亂碼 瀏覽:624
js平方根計算 瀏覽:474
命令提示符如何看網路結構 瀏覽:921
mac的lr配置文件路徑 瀏覽:424
在電腦上怎麼qq傳文件怎麼打開不了 瀏覽:154
百度雲怎麼找本地文件 瀏覽:661
小米4怎樣把程序加密 瀏覽:118
蘋果手機屏幕6個密碼 瀏覽:882
如何用手機編程小游戲 瀏覽:531
輸入你的小程序appid 瀏覽:276
ps文件暫存檔已滿 瀏覽:230
微信紅包留言可以語音 瀏覽:192
c語言畫直線代碼 瀏覽:107
華為g7文件管理在哪裡 瀏覽:74
word2003修改批註人 瀏覽:445
網路的規模是如何擴大的 瀏覽:381
資料文件夾單價多少 瀏覽:813
newfilejava 瀏覽:681
怎麼卸載天貓精靈里的app 瀏覽:544
蘋果電腦win7修復漏洞後內存 瀏覽:850

友情鏈接