我有一個網站,當用戶單擊按鈕時使用ajax引入內容。除非有人使用移動Safari的「添加到主屏幕」功能,然後使用主屏幕上的圖標打開網站,否則這種方式可以正常工作。當您在iPhone上「添加網站到主屏幕」時,Ajax會中斷
當有人從主屏幕圖標打開網站時,它會一直運行,直到ajax加載部分。當有人點擊鏈接時,屏幕閃爍白色,然後內容被加載,但是實際上運行的任何應該在加載函數中運行的函數都不會運行。就像內容被加載一樣,但是應該發生的動畫不會發生,並且頁面看起來破損。
這是一個奇怪的問題,我無法檢查問題,因爲我無法訪問我的控制檯。
這裏是我的web應用程序的鏈接(它尚未完成) - http://chrisgjones.com/aut/1.3/
我的AJAX負荷看起來像這樣
<div class="inner">
<a href="farm.html">Link</a>
</div>
function loadProject(){
var $load = $('#level');
$(document).on('click','.inner a',function(e){
e.preventDefault();
$this = $(this);
var _sourceTarget = '#puzzle',
_url= $this.attr('href');
$load.load(_url+" "+_sourceTarget, function(){
animalSlider();
setTimeout(function(){
$('.animal-content').centerRelative();
}, 2000);
$('#level-selection').animate({'left':'-200%'}, _speed, _ease, function(){
$logo.animate({'top':'10%'}, _speed, _ease);
$loader.animate({'margin-bottom':'10px'}, _speed, _ease, function(){
setTimeout(function(){
$logo.animate({'top':-_logoHeight}, _speed, _ease);
$loader.animate({'margin-bottom':-_loaderHeight}, _speed, _ease, function(){
$splash.delay(_speed).fadeOut(_speed*2);
});
}, 3000);
});
});
}); // end load
}); // end click
} // end function
爲了看起來像原生應用程序,「添加到主屏幕」隱藏地址欄。是否有可能您的JS代碼是指window.location,並且當您將其作爲本地應用程序執行時不起作用 – Chandra