1

我正在尝试使用 jquery.load() 函数在 phonegap 中加载 html 页面。但它不工作。它不会加载我要加载的页面。这是我的代码

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="#">Home</a></li>
        <li><a href="#">Profile</a></li>
        <li><a href="#">Photo</a></li>
    </ul>
</footer>

我怎样才能使这项工作?请帮忙

更新

科尔多瓦.xml 文件

<?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>

在将上面添加到cordova.xml文件之后,我在jquery中添加了这种文件路径

 jQuery(function () {
var Login = {
    onDeviceReady : function () {
        $('.contents').load('./login.html');
    }
};

document.addEventListener("deviceready", Login.onDeviceReady, false);
 });
4

1 回答 1

2

我注意到您的 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.htmlwww->pages中,您将拥有:

$('.contents').load('./pages/login.html');

例如文件夹结构:

  • www

    • html_calling_load.html

    • pages

      • login.html

希望这可以帮助。让我知道你的结果。

于 2012-09-18T07:25:56.747 回答