2012-04-27 69 views
6

我有一個webview,這是顯示在應用程序中 有一個頁面上的動畫,一個數字計時器,我在那裏顯示圖像每個數字像這樣00:39,29:39,等JavaScript動畫在ios safari webkit瀏覽器中停止,當手指在屏幕上時不會擡起

它正在動畫使用的setInterval JavaScript中的 頁面內的問題是,當我把我的手指在屏幕上,即觸摸無擡起我的手指 瀏覽器暫停,這意味着動畫不再動畫,它停在我的手指觸摸屏幕的地方,並且在我擡起手指後它將繼續動畫

我該如何解決這個問題? 我聽說我可以使用防止默認方法,但不會忽略頁面上的所有事件嗎?除了在我的網頁定時器

basicaly,我也有一些東西,用戶可以交互,因此它正在尋找點擊事件等

,所以我肯定要保留,以及 請幫助

發生這種情況的iOS設備上...如果我在桌面上運行布勞爾,一切似乎ok..not停止被觀察

回答

0

發現是什麼問題。 它與ajax請求或cpu 無關,這是因爲引入了一個微小的滾動。顯然,如果你正在滾動或滾動,所有的提示都將停止。

0

如果你按在櫃檯上或任何地方只是否停止?嘗試防止點擊計數器元素。例如..

$('#counter-container').click(function() 
{ 
    e.preventDefault(); 

    return false; 
}); 

編輯:顯然,這不是一個罕見的問題。當iphone需要更多的CPU /內存資源時,它會停止執行javascript。看看使用setInterval(以給定的間隔執行javascript,直到調用clearInterval())來檢測動畫是否未成功完成。
相關的問題:
User interaction sometimes screws up jQuery ajax requests in UIWebView
AJAX constantly look for server update? Javascript
https://discussions.apple.com/thread/2723866?start=0&tstart=0

+0

謝謝先生,但anmation實際上停止,只要我把手指放在webview上的任何地方,而不僅僅是動畫容器,所以解決方案不起作用 – user1118019 2012-04-30 21:09:17

+0

@ user1118019查看更新的答案 – 2012-04-30 22:06:13

+0

再次感謝後續行動,但我沒有做任何ajax請求,並且我爲簡單的動畫製作了一些東西,我不認爲它會盜取cpu資源等。我檢查動畫是否行不通,我的意思是,首先,我們不知道是什麼導致動畫暫停,我真的懷疑這是CPU的原因。再次,我的動畫在你擡起手指後恢復動畫,動畫是用於定時器的,比如說10秒的限制,用戶應該在10秒內做一些動作,我不能重新制作動畫,因爲它會給用戶10個以上的動畫其次做任務,打破了規則。 – user1118019 2012-04-30 23:04:13

1

只是針對遇到此之後的任何一個:滾動的時候,這是你的Web視圖是由手指觸摸預期 動畫總是在Web瀏覽器停止。 這將發生在桌面瀏覽器以及

相關問題