我在我的应用程序中使用带有 jquery mobile 的 phonegap。
我陷入了一个奇怪的问题,并尝试了从 StackOverflow 上的许多问题中获得的解决方案,但似乎没有任何效果,所以在这里询问。
问题是:
当我调用一个页面时:
window.location.href="page1.html"//it works
它会触发 onDeviceReady 但是当我使用锚标记从 jQueryMobile 导航栏 li 标记调用它时,它只会加载正文,但无论我做什么都不会调用任何事件。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta charset="utf-8">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
<script type="text/javascript" charset="utf-8" src="phonegap-1.4.1.js"></script>
<script type="text/javascript">
function onBodyLoad()
{
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady()
{
alert("testing");
//my things
}
</script>
</head>
<body onload="onBodyLoad()">
<div data-role="header" data-id="foo1" data-position="fixed">
<div data-role="navbar">
<ul>
<li><a href="Page1.html" data-theme="a">page1</a></li>
<li><a href="Page2.html" data-theme="a" class="ui-btn-active ui-state-persist">page2</a></li> <!-- these two pages get called but doesn't fires onDeviceReady or onBodyLoad -->
</ul>
</div><!-- /navbar -->
</div>
</body>
</html>
也试过这个,但没有奏效:
document.addEventListener("deviceready", onDeviceReady, false);
任何建议如何解决这个问题?谢谢。
注意:这些答案(可能重复)不起作用。