我有一個Phonegap/jQuery應用程序工作得很好,但是在一個區域中DOM正在被更改並且不顯示,直到某些用戶輸入(觸摸,拖動,任何東西)觸發顯示重新渲染。 (這種情況我的Android手機和平板電腦上,但在Chrome瀏覽器的)Phonegap dom更新沒有立即反映在顯示屏
function reloadSubscriptions(num) {
if (subscriptionsStore[num]) {
for (var x in subscriptionsStore[num]) {
$('#' + x + 'Subscribe').html('<a href="#" onclick="unsubscribe(\'' + x + '\',\'' + num + '\'); return false;">[UN-SUBSCRIBE]</a>');
}
}
$('#busy').hide();
}
這是一個鏈,它做的DOM更新...任何想法如何,我可以觸發應用刷新的最終功能顯示?
我願意爲演示提供APK和更大的腳本塊。
我從此得到這個發生在其他地方,基本上任何時候我更新DOM,而不會改變很多的顯示。
編輯:
原來的HTML頁面包括:
<div id="wrapper">
<ul id="menuList" class="menu-list"></ul>
<div id="otherContent"></div>
</div>
當按下某個按鈕,選項列表加載到#menuList。當它們被加載時,一個範圍#<item-id>
在每個<li>
內部創建訂閱。列表加載後,我發佈的原始功能有條件地更新了跨度#<item-id>
訂閱。
當加載選項列表時,顯示會發生變化,但在事件發生後更新區間時不會顯示。觸摸屏幕然後顯示更新。
你能提供更多的腳本代碼嗎?理想情況下,它應該像現在這樣工作,但可能會發生其他一些腳本正在做的伎倆。另外x〜Subscribe元素已經可用,或者它在鏈中的某處被創建? – dhaval 2012-03-06 12:55:36
@dhaval我添加了一些解釋.. – Fosco 2012-03-06 18:06:09
我已經根據你的上面的腳本創建了一個小提琴,你可以檢查是否放在一起是否正確。 [http://jsfiddle.net/dhavaln/AnTVC/](http://jsfiddle.net/dhavaln/AnTVC/) – dhaval 2012-03-06 18:49:45