我正在尝试使用PhoneGap 1.3.0创建一个新的
Android项目.和JqueryMobile.但问题是,如果我使用只有手机差距测试代码Phone Gap工作! DeviceReady函数被触发.请查看考试
<head> <Meta charset="utf-8"> <Meta name="viewport" content="width=device-width,initial-scale=1"> <title>Test Page</title> <link rel="stylesheet" href="jquery.mobile/jquery.mobile-1.0.css" /> <link rel="stylesheet" href="docs/assets/css/jqm-docs.css" /> <link rel="stylesheet" href="docsdemos-style-override.css" /> <script type="text/javascript" src="jquery.mobile/jquery-1.6.4.min"></script> <script type="text/javascript" src="jquery.mobile/jquery.mobile-1.0.js"></script> <script type="text/javascript" charset="utf-8" src="phonegap-1.3.0.js"></script> <script type="text/javascript" charset="utf-8"> var onDeviceReady = function() { document.getElementById("devready").innerHTML = "OnDeviceReady fired."; }; function init() { document.addEventListener("deviceready",onDeviceReady,true); } </script> </head> <body > <div data-role="page" id="konum" data-theme="a"> <div data-role="header"> <h1>Position</h1> </div> <div data-role="content"> <p>APP will go here.</p> <p> <span id="devready">DeviceReady() Not Fired.</span> </p> </div>
但我想使用jQuery分页功能.结果是:Deviceready没有被解雇.问题是什么.如何使用PhoneGap javascript代码和jQuery库.
<html> <head> <Meta charset="utf-8"> <Meta name="viewport" content="width=device-width,initial-scale=1"> <title>Test Page</title> <link rel="stylesheet" href="jquery.mobile/jquery.mobile-1.0.css" /> <link rel="stylesheet" href="docs/assets/css/jqm-docs.css" /> <link rel="stylesheet" href="docsdemos-style-override.css" /> <script type="text/javascript" src="jquery.mobile/jquery-1.6.4.min"></script> <script type="text/javascript" src="jquery.mobile/jquery.mobile-1.0.js"></script> <script type="text/javascript" charset="utf-8" src="phonegap-1.3.0.js"></script> <script type="text/javascript" charset="utf-8"> var onDeviceReady = function() { document.getElementById("devready").innerHTML = "OnDeviceReady fired."; }; function init() { document.addEventListener("deviceready",true); } </script> </head> <body > <div data-role="page" id="home" data-theme="a"> <div data-role="header"> <h1>Home</h1> </div> <div data-role="content"> <div data-role="content" id="twitList" > something will go here </div> </div> <div data-role="footer" data-id="foo1" data-position="fixed"> <div data-role="navbar"> <ul> <li><a href="#home" id="home" data-icon="custom">Home</a></li> <li><a href="#about" id="about" data-icon="custom">About</a></li> <li><a href="#konum" id="konum" data-icon="custom">Position</a></li> <li><a href="#contact" id="contact" data-icon="custom">Contact</a></li> </ul> </div> </div> </div> <!------page seperator --------> <div data-role="page" id="about" data-theme="a"> <div data-role="header"> <h1>About</h1> </div> <div data-role="content"> <p>Hoopp! <a href="#home">Back</a></p> </div> <div data-role="footer" data-id="foo1" data-position="fixed"> <div data-role="navbar"> <ul> <li><a href="#home" id="home" data-icon="custom">Home</a></li> <li><a href="#about" id="about" data-icon="custom">About</a></li> <li><a href="#konum" id="konum" data-icon="custom">Position</a></li> <li><a href="#contact" id="contact" data-icon="custom">Contact</a></li> </ul> </div> </div> </div> <!------page seperator --------> <div data-role="page" id="konum" data-theme="a"> <div data-role="header"> <h1>Position</h1> </div> <div data-role="content"> <p>APP will go here.</p> <p> <span id="devready">DeviceReady() Not Fired.</span> </p> </div> <div data-role="footer" data-id="foo1" data-position="fixed"> <div data-role="navbar"> <ul> <li><a href="#home" id="home" data-icon="custom">Home</a></li> <li><a href="#about" id="about" data-icon="custom">About</a></li> <li><a href="#konum" id="konum" data-icon="custom">Position</a></li> <li><a href="#contact" id="contact" data-icon="custom">Contact</a></li> </ul> </div> </div> </div> </body>
谢谢,
解决方法
你放置了document.addEventListener(“deviceready”,true);在init内部但从未实际调用它来进行初始化.因此,deviceready的监听器没有附加.尝试更改为:
$(function() { document.addEventListener("deviceready",true); });