PhoneGap的OnDeviceReady没有在随后的Blackberry页面上触发

时间:2011-08-01 14:38:20

标签: blackberry cordova

我的phonegap OnDeviceReady事件在我的应用程序的第一页上触发,但是当我转到第二页时不会触发。我包括两个页面的示例代码。请注意,如果我将第二个页面重命名为index.html,它将触发OnDeviceReady,如果我通过另一个页面导航到该页面,它就不起作用。

我正在使用BlackBerry 9550仿真器和Phonegap 0.9.6

以下是第一页的代码

<!DOCTYPE HTML>
<html>
<head>
    <title>PhoneGap</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="viewport" id="viewport" content="initial-scale=1.0,user-scalable=no">
 </head>
<script type="text/javascript">
    var scrollView;
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false); 
    }
    function onDeviceReady() {
        alert("OnDeviceReady");
    }
</script>
<script src="phonegap.js" type="text/javascript"></script>
<script src="json2.js" type="text/javascript"></script>
<body onload="onLoad()" background-color="white">
    <h1><a href="index2.html" >GoToIndex2</a></h1>
</body>
</html>

这是我的第二页:

<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" id="viewport" content="initial-scale=1.0,user-scalable=no">
</head>
<script type="text/javascript">
    var scrollView;
function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }
    function onDeviceReady() {
        alert("2: OnDeviceReady");
    }
</script>
<script src="phonegap.js" type="text/javascript"></script>
<script src="json2.js" type="text/javascript"></script>
<body onload="onLoad()" background="white">
<h1><a href="index.html" >GoToIndex 1</a></h1>
</body>
</html>

2 个答案:

答案 0 :(得分:0)

您使用的是哪个BlackBerry OS? deviceready的PhoneGap文档指出它在4.6中不起作用并建议解决方法。

答案 1 :(得分:0)

我从PhoneGap 1.0.0版本中取样,它工作正常,直到我添加了sencha脚本文件,然后它再也无法使用了

<script src="json2.js" type="text/javascript"></script>
<script src="phonegap.1.0.0.js" type="text/javascript"></script>
<script src="sencha.js" type="text/javascript"></script>