第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在調(diào)試時(shí)或從JavaScript代碼中找到DOM節(jié)點(diǎn)上的事件偵聽器?

如何在調(diào)試時(shí)或從JavaScript代碼中找到DOM節(jié)點(diǎn)上的事件偵聽器?

暮色呼如 2019-05-31 11:27:25
如何在調(diào)試時(shí)或從JavaScript代碼中找到DOM節(jié)點(diǎn)上的事件偵聽器?我有一個(gè)頁(yè)面,其中一些事件偵聽器被附加到輸入框和選擇框。有什么方法可以找出哪個(gè)事件偵聽器正在觀察特定的DOM節(jié)點(diǎn),以及哪個(gè)事件呢?使用以下方法附加事件:原型 Event.observe;多姆氏addEventListener;作為元素屬性element.onclick.
查看完整描述

3 回答

?
GCT1015

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果您只需要檢查頁(yè)面上正在發(fā)生的事情,可以嘗試視覺事件書簽。

更新視覺事件2可用;


查看完整回答
反對(duì) 回復(fù) 2019-05-31
?
catspeake

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊

這取決于事件是如何連接的。為了舉例說明,假設(shè)我們有以下單擊處理程序:

var handler = function() { alert('clicked!') };

我們將使用不同的方法將它附加到元素上,有些方法允許檢查,有些方法不允許檢查。

方法A)單個(gè)事件處理程序

element.onclick = handler;// inspectalert(element.onclick); // alerts "function() { alert('clicked!') }"

方法B)多事件處理程序

if(element.addEventListener) { // DOM standard
    element.addEventListener('click', handler, false)} else if(element.attachEvent) { // IE
    element.attachEvent('onclick', handler)}// cannot inspect element to find handlers

方法C):jQuery

$(element).click(handler);
  • 1.3.x

    // inspectvar clickEvents = $(element).data("events").click;jQuery.each(clickEvents, function(key, value) {
        alert(value) // alerts "function() { alert('clicked!') }"})
  • 1.4.x(將處理程序存儲(chǔ)在對(duì)象中)

    // inspectvar clickEvents = $(element).data("events").click;jQuery.each(clickEvents, function(key, handlerObj) {
        alert(handlerObj.handler) // alerts "function() { alert('clicked!') }"
        // also available: handlerObj.type, handlerObj.namespace})

(見jQuery.fn.datajQuery.data)

方法D):原型(凌亂)

$(element).observe('click', handler);
  • 1.5.x

    // inspectEvent.observers.each(function(item) {
        if(item[0] == element) {
            alert(item[2]) // alerts "function() { alert('clicked!') }"
        }})
  • 1.6至1.6.0.3,包括在內(nèi)(在此非常困難)

    // inspect. "_eventId" is for < 1.6.0.3 while // "_prototypeEventID" was introduced in 1.6.0.3var clickEvents =
     Event.cache[element._eventId || (element._prototypeEventID || [])[0]].click;clickEvents.each(function(wrapper){
        alert(wrapper.handler) // alerts "function() { alert('clicked!') }"})
  • 1.6.1(略好一點(diǎn))

    // inspectvar clickEvents = element.getStorage().get('prototype_event_registry').get('click');clickEvents.each(function(wrapper){
        alert(wrapper.handler) // alerts "function() { alert('clicked!') }"})


查看完整回答
反對(duì) 回復(fù) 2019-05-31
  • 3 回答
  • 0 關(guān)注
  • 679 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)