2015-07-05 26 views
0

我有一個元素<div class='graph'>,我嘗試將onClick事件與它關聯。在這個元素的頂部有一些動態加載過程,但我不確定該過程加載的事件處理程序是什麼。javascript事件衝突,但不知道如何識別第一個事件分配

例如,打開網頁後,我用highchart繪製上<div class='graph'>一個圖表,然後我嘗試添加一個事件處理程序$('.graph').on('click',function(){//to show some text when click the <div>},但不幸的是,這並不工作(功能從來沒有執行,當我點擊了該元素)。唯一能想象的是,高圖在'.graph'上添加了一些「點擊」事件。所以當我添加另一個'點擊'事件時,它不會按預期工作。

我的問題是:

1)我怎麼能知道什麼是第一個「click」事件(由console.log($('.graph').click())似乎沒有給我任何有用的信息)?

2)我應該如何讓第二次點擊成功?

非常感謝任何幫助或任何提示!

+1

'.on()'添加了一個事件監聽器。一個元素可以有多個事件監聽器,並且所有的都將被觸發。但是,也許點擊被['pointer-events'](https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events)禁用,或者另一個事件監聽器停止傳播事件到達你的元素之前。 – Oriol

+0

很高興看到一些源代碼 –

+0

可能試圖首先使用.off()取消所有事件監聽器,然後將您的事件監聽器.on()。 – L4zl0w

回答

1

在源代碼中,您可以找到line #9946(對於4.1.7) - 這可以防止默認方法,但是,您不會找到stopPropagation()調用。

我建議使用chart.events.click來代替。

+0

謝謝,確切地說,chart.events.click的作品 –

相關問題