0

我在用

 $('#result').load('http://.... #div');

获取外部网站的内容。我编辑了PhoneGap的域白名单。如果我将此页面设置为索引页面,它就可以工作。但是,通过提交表单设置为下一页时,它就不能正常工作了。未显示来自外部网站的内容。我该如何解决?谢谢

4

1 回答 1

0

最好为此使用 javascript 框架并仍然使用单个 index.html 文件。我遇到的最佳实践是使应用程序不是多个 html 文件。有许多框架可以实现这一点,最好的文档是 jquerymobile。

在您的 javascript 文件中使用 JQueryMobile,您将检查 page1 div 何时使用 jquerymobile 加载,然后运行您的 .load 代码。

JQueryMobile 没有它寻找的不同事件。在这种情况下,在页面启动 (pageinit) 之前,您希望运行加载事物以从其他网站获取内容。

$( "#page1" ).live( "pageinit",function(){ 

    $('#result').load('http://.... #div'); //place your load here..you can even $.post(function(){..}); to a php script to get exactly what you want.


});

您在 body 标签内的 html 文件将包含此内容,当然您需要在 head 标签之间包含 jquery 和 jquerymobile js 和 css 文件。

<div data-role="page" id="home" data-theme="a">
            <div data-role="header">
                <h1>Welcome</h1>
            </div>
            <div data-role="content">
                <ul data-role="listview">
                    <li class="btn_a"><a href="#page1">Page1</a></li>
                    <li class="btn_s"><a href="#page2">Page2</a></li>
                    <li class="btn_l"><a href="#page3">Page3</a></li>

                </ul>
            </div>

            <div  data-role="footer">
                <h4>Your Brand</h4>
            </div>
        </div>


<div data-role="page" id="page1" data-theme="a">
            <div data-role="header">
                <h1>Page1 Heading</h1>
            </div>
            <div data-role="content">
                <h1>This is Page1</h1>
                           <div id="#result"></div>
            </div>

            <div  data-role="footer">
                <h4>Your Brand</h4>
            </div>
        </div>
于 2013-03-18T00:29:57.303 回答