0

jQuery load() イベントを使用してページを iframe にロードしています。ロード中のページには、2 つの API にアクセスするスクリプトが含まれているため、ロードに時間がかかります (~15 ~ 30 秒)。クリックして読み込みをキャンセルできるボタン/リンクを読み込み画面に追加したいと思います。そうしないと、ページから移動できなくなります。現在、私は持っています:

<script>
function callIframe(url) {
    $('#analyticsloader').show();
    $('#analytics').html('<iframe src="" allowtransparency="yes" style="width:735px;height:1510px;border:0;" id="analyticsiframe"></iframe>');
    $('iframe#analyticsiframe').attr('src', url);
    $('iframe#analyticsiframe').load(function(){
        $('#analyticsloader').hide();
    });
}
$(function(){
    callIframe('analytics/index.php');
    var start, end;
    $('#updateStats').click(function(){
        start = $('#startDate').val();
        end = $('#endDate').val();
        callIframe('analytics/index.php?start='+start+'&end='+end);
    });
});
</script>

#analyticsloaderは ajax ローダー グラフィックを含む div であり、「何とかロードする間お待ちください」、load() 関数の実行を停止する [キャンセル] ボタンを追加したいと考えています。

4

2 に答える 2

0

あなたの質問への答えはここにあるかもしれません:

jquery.load()をキャンセルするには?

于 2011-03-07T18:12:18.477 に答える
0

試す:

$('.abort-ajax').click(function(){
     x.abort();
});

ここで、「x」は ajax リクエストを保存する変数です。

またはこのjqueryプラグイン

于 2011-03-07T18:26:21.547 に答える