【发布时间】:2017-12-01 05:12:16
【问题描述】:
我无法让设备就绪功能在 phonegap (即 xcode 模拟器)中工作。 html如下:`
<title>Boilerplate</title>
</head>
<body>
<div id="main" data-role="page">
<div data-role="header" class="logo">
<img class="logo" src="img/premium-logo.jpg" />
</div>
<div data-role="content">
<h1>Apache Cordova Test Zone</h1>
<div class="test-zone" id="test-zone">
</div>
</div>
<div data-role="footer">
<h4>Footer of main page</h4>
</div>
</div>
<script type="text/javascript" src="js/jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="js/jQuery-Mobile-1.3.1-min.js"></script>
<script type="text/javascript" src="cordova-2.3.0.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
$(document).ready(init());
</script>
</body>
Javascript 文件 index.js:
function init() {
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady() {
alert('It works!');
}
如果我注释掉 init 函数内的行并简单地用 onDeviceReady(); 替换它我可以在 chrome 上收到提醒。
为什么不能在模拟器中使用上面的代码。 谢谢
【问题讨论】:
-
我会尝试在
$(document).ready()之外注册document.addEventListener("deviceready", onDeviceReady, false);。除此之外,$(document).ready()将function作为参数,例如。$(document).ready(init); -
我尝试调用 document.addEventListener("deviceready", onDeviceReady, false);我已经准备好在设备上调用初始化函数。仍然看不到哪里不起作用
-
那么,日志中有什么?我没有机会使用适用于 iOS 的 PhoneGap,但使用 Adnroid,由于 JS 损坏,它并没有触发几次,我可以在调试日志中看到它
标签: javascript html cordova