2013-05-18 9 views
5

私はサーバ側のスクリプトでこれを簡単に行うことができますが、PhoneGapの開発の焦点はローカルコピーにあります。HTMLページを別のHTMLページに再利用/含めるにはどうすればいいですか? )?Phonegap HTMLページを再利用/含めるには?

+0

あなたには、いくつかのコードを提供することはできますか? – Mkpatel

+0

iframeを試しましたか? –

+0

@TasosBitsios iframeは私が望むものではありません。たとえば、すべてのページでカスタマイズされたダイアログコンポーネント(divコンテナ)を使用したい場合、HTMLコンテンツをすべてのページにコピーする必要はありません。 ? – GMsoF

答えて

3

あなたがjQuery Mobileを認識している.IFこのライブラリをlibrary.Using PhoneGapを使用してアプリケーションを開発しながら、あなたが1つのpage.Iに複数のHTMLページを含むことができ、利用可能な多くの良いライブラリを使用することができますPhoneGap developer.Iは、単一のページを開発しているのですこのjQMライブラリを使用したアプリケーション。

彼らはAjaxのナビゲーションに取り組んだので、クライアント側でページをリロードしません。これにより、あなたのアプリケーションのパフォーマンスは劇的に向上します。HTML5 localStorage.aoreのすべてのデータを1つのajaxヒットに保存し、複数のページをナビゲートします。ここで

はリンクです:jQuery Mobile

また、あなたは1つのpage.Itの学ぶことは非常に簡単に複数のHTMLページをロードするためにpager.jsライブラリを使用することができます。

希望すると、これが役立ちます。

+0

jQuery Mobile FYIのリンクが正しくありません - pager.jsにリンクしています –

2

あなたはajaxリクエストでそれを取得し、ページに挿入できます。私はangular.jsを使用しています。これはシーンの裏で何をするのですか?jqueryのロード関数のような単純なものを好むかもしれません:http://api.jquery.com/load/

+0

こんにちは、私は、Webブラウザでこのメソッドを試しました、私たちはajaxローカルファイルを取得しようとすると、我々は同じ起源のポリシーの問題があります。 phonegapはローカルファイルに焦点を当てているので、ajaxを使用することで同じ問題が発生しますか? – GMsoF

+0

ローカルマシンで開発している場合、ファイルを提供するにはhttpサーバーを実行する必要があります。 OSXにはApacheが付属していますが、これは設定するのが難しいです。いくつかのソーラーLAMPのことを使用するか、あなたのhtmlを含むフォルダに行き、 "python -m SimpleHTTPServer"を実行してください。 SimpleHTTPServerはリクエストを逃してしまうこともありますが、動作します。 –

+0

ノードは、単純なhttpサーバーの別のオプションです。 – Kieran

-1

コンテンツをAjax経由でロードする方が良い解決策ですが、JSONPはコンテンツをAjaxで読み込む別の方法です。 JSONPは、起源ポリシーの問題が同じではありません。

スクリプトタグを使用してロードして表示するJSファイルにHTMLコードを配置します。例えば:

JSONP-ファイル:

var dialogComponentHTML = "<form>your html code...</form"; 
$(document).ready(function() { 
    $("#your_placeholder").html(dialogComponentHTML); 
}); 

HTML-ファイル:

<script type="text/javascript" src="dialog.jsonp"> 
<div id="your_placeholder"></div> 

も参照http://en.wikipedia.org/wiki/JSONP

関連する問題