2010-06-12 51 views
4

我發現了一些與滾動和渲染以及javascript相關的奇怪行爲。Javascript和渲染暫停並停留在Android瀏覽器的滾動中

如何做到這一點:

任何網頁上足夠長,以滾動。開始滾動非常快(扔頁面)。然後釋放觸摸。 現在,由於勢頭,頁面仍在滾動。點擊屏幕停止滾動。

這使得瀏覽器進入一個奇怪的模式。

在nexus上它的行爲如下: 更新屏幕上顯示的內容會停止,您仍然可以單擊鏈接並前往所需的位置,但屏幕上顯示的內容保持不變。

如果您稍後再滾動屏幕,屏幕的更新會再次啓動,並顯示您所在的位置。

在有HTC Sense的所有手機我已經試過(英雄,慾望,聯想)發生這種情況:

屏幕的更新停止時,就像在Nexus One上,而且任何JavaScript的執行是停止。 如果您點擊可將您帶到另一個頁面的鏈接,但事情又會恢復正常。

我測試了,這是我創造了這樣的頁面的方式:

http://pastebin.ca/1881620

的changeColor功能簡單地改變「容器」的背景色爲幾個不同的顏色。

所以在錯誤發生之前發生的是,當你點擊任何鏈接的顏色改變。

這種情況發生的錯誤後:

的Nexus one: 當你點擊沒有反應的鏈接(除了「橙色鏈接選擇圓角盒事」顯示爲如果鏈接被點擊)。然後當你滾動升技。 你可以看到顏色已經改變(和我點擊鏈接的次數相等的次數)。

論觀念: 的聯繫帶我到google.com

有其他人注意到了這個問題?無論如何要解決它嗎?

謝謝。

+0

我遇到同樣的問題。我有一個背景,通過定時器上的JS進行更改。你可以縮放,但是一旦你完全滾動它就會停止執行。 – Jeff 2010-07-01 00:23:47

+1

您是否嘗試附加JavaScript調試器並查看是否有一些JS錯誤被拋出? – Mannaz 2012-03-05 10:38:50

+2

張貼的腳本鏈接已經死了...爲什麼我們無法回答的東西有獎金? – Incognito 2012-03-08 21:49:32

回答

0

您可以嘗試使用操縱瀏覽器滾動過程的插件,例如iScroll4

iScroll4讓我們做一些很酷的東西(如固定頁眉/頁腳),但它確實有一些上了年紀/很爛的Android手機的一些性能問題......

我不能保證它如果你對iScroll的其他功能感興趣,或者如果你的bug已經死光了,這是一個節目-stopper爲您的應用程序。