我有一個非常簡單的PhoneGap項目,其中一些消息傳遞元素根據需要打開和關閉。我在這個項目中使用jQuery,儘管我看到的問題無論是否使用jQuery來顯示/隱藏div都會發生。Phonegap - 可以隱藏div,但不顯示
不管怎麼說,相關的標記是這樣:
<div class="event listening blink" id="waiting" >
Waiting for Game
</div>
<div class="event listening blink" id="error" >
Something bad happened...
</div>
<div id="running">
<h1>Shake Me!</h1>
<div id="deviceready">
<p class="event listening" id="accelerometer">Waiting for accelerometer...</p>
</div>
</div>
<div id="complete">
<h1 id="finalStatus">Game Over</h1>
<div id="myRanking">
<p class="event listening">You came in 100th place.</p>
</div>
</div>
...頁面加載時,我隱藏所有這些div一樣的:
$("#waiting").hide();
$("#running").hide();
$("#error").hide();
$("#complete").hide();
隨着各種事件的發生應用程序,我展示了相應的div,例如:
$("#waiting").show();
似乎非常簡單,除了divs不再出現。一旦div被隱藏,它就會保持隱藏狀態。沒有JavaScript錯誤被拋出,即使我使用document.getElementById("waiting").style.display = 'block';
以舊式方式顯示/隱藏它們也會發生同樣的事情。我有console.log()
聲明確認show()
肯定是被調用的。
所以我不知道這是怎麼發生的。有沒有人在過去遇到類似的問題?解決方案是什麼?
您是否曾嘗試在瀏覽器中運行您的應用程序?你遇到過同樣的問題嗎?你也可以嘗試在顯示後的div中打印html,alert($(「waiting」)。html());' – Dilberted
我在手機上的webview有問題,如果你已經設置了像'transform3d'這樣的屬性觸發硬件加速,頁面的可視化渲染與DOM狀態不匹配。我不知道這是怎麼回事,但我怎麼知道是否是問題所在,通過實際記錄DOM元素的樣式對象來查看對象是否實際可見,然後強制迴流/以某種方式重新繪製。 –
我試圖使用上面的例子,似乎工作正常。除非您等待的事件(顯示div)在div實際隱藏之前到達。你可以多一些你的代碼或完整的文件嗎? – Dilberted