1

jQuery load() 関数を使用してローカル ファイルからコンテンツをロードする phonegap アプリケーションを作成します。iOS と Android の両方で動作しますが、Windows Phone 7.5 では動作しません。この問題を検索しましたが、どこにも解決策が見つかりません。問題は、load() 関数が Windows Phone ブラウザーでは機能するが、phonegap アプリとしてパッケージ化されている場合は機能しないことです。

ここにいくつかのコード例があります。index.html ファイル:

<!DOCTYPE html>

<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> 

        <title>Test</title>

        <script src="scripts/jquery-2.0.3.min.js" charset="UTF-8"></script>
        <script src="scripts/jquery.mobile-1.3.2.min.js" charset="UTF-8"></script>
        <script src="scripts/functions.js" charset="UTF-8"></script>

        <link rel="stylesheet" href="css/jquery.mobile-1.3.2.min.css" charset="UTF-8" />

    </head>

    <body>
        <div id="#start" data-role="page">
            <div data-role="content" id="start">    
                <div id="text"></div>
                <div data-role="controlgroup">
                    <a href="#bonesida" data-role="button" onClick="test();">Test it!</a>
                </div>
                <div id="text"></div>
            </div><!-- /content -->
        </div>
    </body>
</html>

functions.js ファイル:

function test() {
    $('#text').load('text.txt');
}

text.txt ファイル:

Here's some text.

同一オリジンポリシーの関係かと思いますが、これは他のファイルと同じディレクトリにあるローカルファイルです。それともローカル URL に問題があるのでしょうか。絶対 URL (x-wmapp1:/app/www/test.txt) も使用しようとしましたが、どちらも機能しませんでした。

Windows Phone の Phonegap アプリで load() 関数を動作させることは可能ですか? 私は何を間違っていますか?助けていただければ幸いです。

4

2 に答える 2

0

代わりに $.get または $.ajax を使用します。

function test(){
 $.get('text.txt', 
        function(data) {
           $("#text").html(data);
        },
        'text');
}
于 2013-08-09T10:28:22.753 に答える