Phonegap - 可以隐藏div,但不能显示

时间:2012-11-19 02:20:41

标签: javascript jquery html css cordova

我有一个非常简单的PhoneGap项目,有一些消息元素可以根据需要打开和关闭。我正在使用jQuery与这个项目,虽然我看到的问题发生无论我是否使用jQuery来显示/隐藏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();

看起来很简单,除了div不再出现。一旦div被隐藏,它就会保持隐藏状态。没有抛出JavaScript错误,即使我使用document.getElementById("waiting").style.display = 'block';以老式的方式显示/隐藏它们,也会发生同样的事情。我有console.log()个语句,确认show()肯定被调用。

所以我对如何/为何如此发生感到茫然。有没有人在过去遇到过类似的问题?解决方案是什么?

1 个答案:

答案 0 :(得分:1)

我发现了这个问题(有点)。显然jQuery与页面上使用的其他脚本相冲突。我不确定哪一个,或冲突是什么,或者冲突如何严重导致element.style.display = 'block';停止工作,但更改HTML中<script>标记的顺序解决了这个问题。