phonegap プロジェクトで、パスからモバイルでxml
ファイルをロードする際に大きな問題があります。assets
jQuery
ファイルをロードする必要がありxml
ます。ファイルはプロジェクトのルートに配置されます。問題は ajax url: "language.xml"にあります。これが私のコードです:
var language = 'english';
var regEx = /(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)/;
$.ajax({
url: "language.xml",
success: function(xml) {
$(xml).find('translation').each(function(){
var id = $(this).attr('id');
var text = $(this).find(language).text();
if(text.match(regEx)){
$("." + id).replaceWith('<a href="mailto:'+text+'" data-role="button" data-inline="true" data-theme="d" rel="external" data-mini="true">'+text+'</a>');
}
else{
$("." + id).html(text);
}
});
}
});
絶対パスを使用すると、次のファイルに URL を追加してロードできます。file:///android_asset/www/language.xml
これは、Android アセットにのみ有効です。しかし、 iOSの正しいパスも必要です。
Android/iOS デバイスでファイルをロードできるように、jQuery で URL パスを絶対的/相対的にリンクすることはできますか?
上記の更新 コードは正しいです。デスクトップブラウザ内でのテストで失敗しました。プロジェクトは、相対パスを使用して Android および iOS で正常に動作します。
Android やiOS のように絶対パスを追加する必要はありません。file:///android_asset/www/
file:///var/mobile/Applications/7D6D107B-D9DC-479B-9E22-4847F0CA0C40/YourApplication.app/www/