如何加载页面使用jquery load()在phonegap [英] how to load pages using jquery load() in phonegap
问题描述
我试图使用jquery.load()函数加载html页面在phonegap。但它不工作。它不加载我想加载的页面。这是我的代码
jQuery(function(){
var Login = {
onDeviceReady:function ){
$('.contents').load('http:// localhost:8888 / pc / assets / www / pages / login.html');
}
};
document.addEventListener(deviceready,Login.onDeviceReady,false);
});
这里是我的html
< header>
header
< / header>
< section class =contents>
contents
< / section>
< footer>
< ul class =nav>
< li>< a href =#>首页< / a>< / li&
< li>< a href =#>个人资料< / a>< / li>
< li>< a href =#>照片< / a>< / li>
< / ul>
< / footer>
如何使这项工作?请帮助
更新
cordova.xml文件
<?xml version =1.0encoding =utf-8?>
<! -
根据一个
或以上的贡献者许可协议授予Apache软件基金会(ASF)许可。有关版权所有权的更多信息,请参阅随此作品分发的NOTICE文件
。 ASF根据Apache许可证2.0版(
许可证)向您授予此文件
;您不能使用此文件,除非符合
的许可证。您可以在
处获得许可证的副本http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,
根据许可证分发的软件按原样基础分发,不附有任何明示或暗示的保证或条件
KIND。请参阅许可证中的
特定语言管理权限和限制
。
- >
< cordova>
<! -
访问元素控制Android白名单。
除非设置否则假定域被阻止
- >
< access origin =*/> <! - allow local pages - >
<! - < access origin =https://example.com/>允许任何安全请求到example.com - >
<! - < access origin =https://example.comsubdomains =true/>例如以上,但包括子域,例如www->
<! - < access origin =。*/>允许所有网域,仅限建议开发 - >
< log level =DEBUG/>
< preference name =classicRendervalue =true/>
< / cordova>添加上面到cordova.xml文件后,我在jquery中添加这种文件路径。
<
jQuery(function(){
var Login = {
onDeviceReady:function(){
$ '.contents')。load('./ login.html');
}
};
document.addEventListener(deviceready,Login.onDeviceReady,false) ;
});
我注意到您的HTML文件 login.html
在您的文件夹 www
中。
可能会尝试通过使用(注意HTML文件的路径)加载HTML文件!
$('。contents') .load('your_login_html_path / login.html');
而不是:
$('.contents').load('http:// localhost:8888 / placeeq / assets / www / pages / login.html');
例如:如果您的html文件(不是 login .html
,另一个调用方法 load()
)位于文件夹 www
,如果 login.html
在 www
- > 页
,你将有:
$('。contents')。load('./ pages / login.html' );
例如文件夹结构:
-
www
-
html_calling_load.html
-
页
p>
-
login.html
-
-
希望这有帮助。请告诉我们您的结果。
I am trying to load html pages in phonegap using jquery.load() function. but it is not working. It does not load the pages which I want to load. Here is my code
jQuery(function () {
var Login = {
onDeviceReady : function () {
$('.contents').load('http://localhost:8888/pc/assets/www/pages/login.html');
}
};
document.addEventListener("deviceready", Login.onDeviceReady, false);
});
here is my html
<header>
header
</header>
<section class="contents">
contents
</section>
<footer>
<ul class="nav">
<li><a href="#">Home</a></li>
<li><a href="#">Profile</a></li>
<li><a href="#">Photo</a></li>
</ul>
</footer>
How can I make this work? Please help
Update
cordova.xml file
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<cordova>
<!--
access elements control the Android whitelist.
Domains are assumed blocked unless set otherwise
-->
<access origin="*"/> <!-- allow local pages -->
<!-- <access origin="https://example.com" /> allow any secure requests to example.com -->
<!-- <access origin="https://example.com" subdomains="true" /> such as above, but including subdomains, such as www -->
<!-- <access origin=".*"/> Allow all domains, suggested development use only -->
<log level="DEBUG"/>
<preference name="classicRender" value="true" />
</cordova>
after adding above to cordova.xml file I add this kind of file path in jquery
jQuery(function () {
var Login = {
onDeviceReady : function () {
$('.contents').load('./login.html');
}
};
document.addEventListener("deviceready", Login.onDeviceReady, false);
});
I noticed that your HTML file login.html
is inside your folder www
.
So, I think you may try to load the HTML file by using (pay attention to the path of the HTML file!)
$('.contents').load('your_login_html_path/login.html');
instead of:
$('.contents').load('http://localhost:8888/placeeq/assets/www/pages/login.html');
For example: if your html file (not login.html
, the other one which calls the method load()
) is in the folder www
, and if login.html
is in www
->pages
, you'll have:
$('.contents').load('./pages/login.html');
Eg folder structure:
www
html_calling_load.html
pages
login.html
Hope this helps. Let me know about your results.
这篇关于如何加载页面使用jquery load()在phonegap的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!