使用Ext JS 4.我有一個容器內的按鈕。我希望容器能夠接收鼠標懸停,鼠標懸停和點擊事件,但該按鈕會導致鼠標懸停和鼠標懸停事件處理程序在容器上被調用兩次。我如何禁用子按鈕上的事件?禁用兒童事件
Q
禁用兒童事件
0
A
回答
2
我相信你運行到4.0的新的bubbleEvents行爲。組件現在將一些事件傳播到它們的父容器。這發生在代碼中,與DOM事件冒泡無關,在組件層次上。
http://dev.sencha.com/deploy/ext-4.0.0/docs/api/Ext.container.Container.html
最好的解決方法是簡單地停止的情況下,一旦你已經處理它。這應該防止所有冒泡,組件或DOM。對點擊事件做這件事通常是一個好主意,以確保點擊事件發生時只有一件事發生,但我不確定它適用於鼠標懸停和鼠標懸停。
panel.on('click', function(e) {
e.stopEvent();
// do your stuff
});
另一個修復你可以嘗試(我沒有)是擦拭按鈕上的bubbleEvents。
另外,可能不太可靠的解決辦法是打開事件緩衝:
el.on('click', this.onClick, this, {buffer: 10});
緩衝倒塌可配置的時間窗口重複事件到之一,它可用於平滑速射或重複的UI事件是非常有用的,但我我不確定它是如何起泡的。
2
{
...
preventDefault: true,
...
}
相關問題
- 1. 禁用jQuery的preventDefault兒童
- 2. Android兒童點擊事件?
- 3. 如何在兒童停止傳播時聆聽兒童事件
- 4. 在WordPress兒童主題中禁用prettyPhoto
- 5. 在CSS中禁用變換兒童
- 6. 如何禁用xmlns傳播給兒童
- 7. Jquery MouseOver事件 - 兒童隱形
- 8. UWP:ScrollViewer遠離兒童吃觸摸事件?
- 9. 如何progate事件給兒童
- 10. 點擊觸發兒童事件?
- 11. 刪除元素及其兒童事件
- 12. 聽Backbone.View中的兒童事件
- 13. 防止兒童事件發生
- 14. 阻止HTML5丟棄事件兒童
- 15. 點擊事件排除兒童(backbone.js)
- 16. Android塊兒童觸摸事件
- 17. Javafx8 stackpane兒童阻止鼠標事件
- 18. Android onLongClickListener查看冒泡兒童事件
- 19. C#兒童之間的事件
- 20. 的NodeJS:兒童事件處理
- 21. 兒童內部角兒童
- 22. 解析兒童Simplexml兒童
- 23. 兒童兒童enumerateChildNodes(withName:使用:)
- 24. JTree的兒童增加兒童對兒童等
- 25. 兒童click事件影響的父事件
- 26. 事件停止與兒童事件傳播問題
- 27. 如何防止事件(鏈接),而兒童事件被觸發
- 28. 事件冒泡 - 兒童控制Mousehover事件
- 29. 防止父母事件觸發兒童事件
- 30. 兒童元素點擊事件觸發父點擊事件
最後我發現我正在尋找mouseenter和mouseleave事件。 – chris 2011-05-16 14:34:08