2015-08-26 45 views
6

我有一個紙按鈕,打開一個文件,對話框包含「接受」紙按鈕點擊時會關閉它的上抽頭功能。聚合物1.0無法停止敲擊事件傳播

,我發現了問題是,如果依賴於我的屏幕分辨率,對話框的「接受」按鈕是在初始按鈕打開對話框,點擊後,對話框打開和關閉。我假設點擊事件正在被解僱。

我試過這兩種方法,但它們似乎沒有幫助。

event.cancelBubble = true; 
event.stopPropagation(); 
+0

如果我使用點擊打電話給我的功能,這不會發生。但我仍在尋找一種方法來阻止事件傳播的發生。 – intosite

+0

event.stopPropagation();在回調(e)從#95在https://github.com/PolymerLabs/more-routing/blob/master/demo/polyfora-forum-index.html –

回答

0

問題是,電容屏或甚至鼠標可以在幾個milisec內同一個點上產生多個敲擊事件。

  • 的鼠標,因爲在高和低電壓的快速變化(邏輯1和0)生成的AC信號至極可以跳上一個電容儲能槽(其可以是空氣之間的按鈕2接觸器),如果條件匹配。但是onclick事件已經在捕捉這種情況,您不需要做任何事情來解決它。

  • 電容屏幕是電容器,只是滾動你的手指應該觸發多次敲擊事件,因爲你的皮膚具有不同的絕緣深度,並且在某些情況下難以標記敲擊開始和結束。

這種物理問題應該由平臺來解決,但它不是在任何情況下目前(但大部分的設備都過濾此)。我通過一個透明的覆蓋元素來解決這個問題,它可以捕獲指針事件持續一段時間,這樣我就可以捕捉按鈕或電容屏幕的「精確」幾毫秒。

如果10-20ms足夠你那麼等待你的抽頭功能框架與​​,然後顯示對話框。便宜的技巧,但它做到了,但最終你可以等待修復超時顯示對話框,因爲你有100ms響應用戶交互。

無法通過,但因爲我知道你沒有選項,需要多少時間傳遞,直到下一個相同的事件應該happend操縱瀏覽器事件選項解決這個問題。但是,如果您等待一個可能像您一樣的框架,則會在事件之間添加延遲。