我在iOS上使用Phonegap 2.1.0。在我的main.html文件中,我使用jQuery加載了一些html。iOS上的Phonegap + head.js不起作用?
但是,我正在加載的一個html文件有其自己的Javascript,以相同的方式加載其他文件($ .ajax等)。 Android中的Phonegap加載這些文件並在其中執行Javascript,但iOS不。
實施例: 的index.html:
<...>
<body>
<script>
$(document).on('pageinit', function() {
$.ajax({
url: 'some.url',
success: function(data, status, jqxhr) {
$("#some-div").html(data);
},
error: function(jqxhr, status, error) {}
});
});
</script>
</body>
</...>
some.url:
<script type="text/javascript">
head.js(
"config-file.js",
function() {
$.ajax({
url: PATH + 'some-other.url', // PATH? see below
success: function(data, status, jqxhr) {
$("#some-div").html(data);
},
error: function(jqxhr, status, error) {}
});
});
</script>
配置-file.js: VAR PATH = 'mypath中';
一些-other.url: 無法在iOS版
加載所有加載的文件來自同一個域提供服務。
再次,上面的代碼在Android中工作。任何想法爲什麼iOS不能做到這一點,以及如何解決它?它是head.js嗎? (0.9.6)
head.js在index.html文件中工作。但它似乎不能在加載的腳本中工作。試圖在index.html中使用函數:var headLoad = function(){head.js(arguments); };但那也行不通。 – Simon
在iOS中,head.js和jquery的$ .ajax都不會從外部加載的腳本中獲取文件。如前所述,兩者都可以在Android中使用。我在Xcode中忘了什麼? – Simon
如果我在Safari中運行應用程序(修改過的index.html,沒有cordova.js),一切正常...... – Simon