爲了獲得幫助,你可以考慮提供腳本的非縮小版本。
我看到代碼中有8ms的setIntervals。如上所述,Firefox永遠不會低於10毫秒(尚)。儘管如此,在FFox 4中玩遊戲非常有趣。我看到了兩個非常小的垃圾郵件,顯然是垃圾收集造成的。 Chrome在這方面比Fox有優勢。儘管SpiderMonkey(用於處理Firefox中的GC)已經從3.5版本大幅提升到了3.6版本,但它仍然不適合許多遊戲。在4.0版本中,它好得多,但仍不如Chrome或Opera中的好。 (這是正在進行這項工作。)
玩遊戲,並在你的代碼簡單地看,我看不到複雜性會導致Firefox不能夠處理什麼事情。另外,Firefox 4的硬件加速畫布比IE9稍微快一些,比Chrome快很多。
在網絡上有一個概念,Chrome在畫布方面比Gecko快,但那是因爲人們很少介紹他們的頁面。事實上,Firefox 3.6中的canvas已經至少和Chrome一樣快,但是由於JavaScript速度較慢,許多測試並未顯示它。 (並且一些JavaScript測試比較慢,因爲Firefox不能很好地處理測試工具。)
所有這些都會導致大量混淆和錯誤信息。底線是您的遊戲應該在Firefox 4中正常運行。您應該查看是否有任何可以避免觸發不必要的GC的操作。例如。你是否重新使用變量或創建不必要的新變量?
但是,在Opera 10.53中,它並不令人愉快。並不是因爲歌劇無法跟上速度,而是因爲它沒有移動底部,而是保持靜止不動,整個比賽場地移動。 (儘管如此,我仍然在第一次嘗試中進入了17級。)在Opera 10.6中,頁面無法正確加載。
您可能需要調試您的代碼 - 或者如果是迴歸,則可能會對Opera發出bug。 (我會鳴叫這引起他們的注意。)
不錯的項目,順便說一句:) – galambalazs 2010-07-01 10:18:19
上癮的遊戲。第17級,Chrome上有83次閃避,1級,Firefox上閃0次。 Firefox的速度太慢了,我不得不移動欄。 – Anurag 2010-07-01 10:23:00
也許8ms間隔對於ff來說太小了.. – galambalazs 2010-07-01 10:24:38