2012-01-18 36 views
0

不一定是我自己的網站,但如果您瀏覽到NBA.com並查看具有左/右滑塊的分數/時間表區域,是否有原因點擊通常註冊爲點擊不會導致滑塊移動?它是一個閃存錯誤?只是想出於好奇而知道。Macbook的水龍頭在網站上不工作,但點擊呢?

我在谷歌Chrome,OSX獅子,MacBook Pro的13" 。

回答

2

我檢查了該鼠標事件使用自來水到點擊時會調用,並且行爲是相同的,與‘正規軍’ 。點擊 - 哪一個會想到這意味着在Flash中沒有錯誤,也沒有在該事件從Mac OS X的路上經過了

所以我反編譯的SWF,發現了原因:

按鈕(ActionScript2)具有onPress()處理程序,每個處理程序以50ms的間隔調用滑塊功能(scrollUnitContainer()),使用setInterval()。然後onRelease()處理程序再次清除間隔。無論您使用點擊式按鈕還是鼠標按鈕,都可以正確調用這兩個處理程序。

setInterval(),但是,直到第一次間隔完成時才調用指定的函數。由於MOUSE_DOWN和CLICK事件之間的時間間隔小於50ms,因此不會執行scrollUnitContainer();當您使用觸控板(或鼠標按鈕)的實際點擊時,MOUSE_DOWN和CLICK之間的時間足夠長,以便該功能被調用一次。

要解決這個問題,作者應該在設置間隔之前簡單地添加scrollUnitContainer(); - 那麼在所有情況下,一切都會正常工作。

+0

你*有*有探索未知,男人的習慣。我的天啊! :) – 2012-01-18 22:52:37

相關問題