0

ユーザーがボタンをクリックしたときに ajax を使用してコンテンツを取り込む Web サイトがあります。これは、誰かがモバイル Safari の「ホーム画面に追加」機能を使用してから、ホーム画面のアイコンを使用して Web サイトを開かない限り、正常に機能します。

誰かがホーム画面のアイコンから Web サイトを開くと、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
4

2 に答える 2

1

わかりましたので、このスクリプトを頭から削除しました。HMLT5 Mobile Boilerplate に付属していました...今では正常に動作します

<!-- This script prevents links from opening in Mobile Safari. https://gist.github.com/1042026 -->

<script>(function(a,b,c){if(c in b&&b[c]){var d,e=a.location,f=/^(a|html)$/i;a.addEventListener("click",function(a){d=a.target;while(!f.test(d.nodeName))d=d.parentNode;"href"in d&&(d.href.indexOf("http")||~d.href.indexOf(e.host))&&(a.preventDefault(),e.href=d.href)},!1)}})(document,window.navigator,"standalone")</script>
于 2013-08-22T22:29:04.947 に答える
0

最初の質問に答えた後、画像の読み込みに問題がありました。(アンドロイド)。他のすべてへの私の接続は見当たらないので、接続の問題であるとは思えません. それが役立つことを願っています。

于 2013-08-29T20:06:56.003 に答える