20

JavaScript の読み込みを遅らせるためのツールやテクニックがいくつかあることは知っていますが、ページの残りの部分のダウンロードとレンダリングが完了するまで読み込みを遅らせたい iframe があります (iframe は非表示にあり、誰かがページ上の特定のタブをクリックするまで表示されます. iframe の読み込みを遅らせる方法はありますか? 提案があれば大歓迎です. ありがとう!

4

11 に答える 11

15

jqueryなら簡単!

iframe をロードするコードを で囲むか、これらを$() 使用するかのどちらか$(document).ready(function(){}) は同じであり、DOM の準備ができた後にコードを実行します!

例えば

$(document).ready(function(){
    $('iframe#iframe_id').attr('src', 'iframe_url');    
});

http://www.learningjquery.com/2006/09/introducing-document-readyで詳細を参照してください。

于 2009-10-19T08:30:44.000 に答える
10

JavaScript なしで実行する必要があるかどうかはわかりません。しかし、最善の方法は、iframe の直後で src を変更することです。

<iframe id="myIframe" src="http://.." />
<script type="text/javascript">
  var iframe = document.getElementById('myIframe').src = iframe.src;
  iframe.src = '';
  document.onload =  function(){iframe.src = src;}
</script>

$(document).ready を使用すると、DOM ツリーがビルドされた直後に Iframe のレンダリングが開始されますが、サイドのすべてのコンテンツが読み込まれる前に、これはあなたが望むものではないと思います。

jquery には、onload と同じイベント .load があります (すべてのリソースがロードされた後)。

$(window).load(function(){  iframe.src = src; }
于 2009-10-19T14:45:39.100 に答える
5

onLoad イベントまたはボタン クリック ハンドラで Javascript を使用して、iframe の src 属性を設定します。

于 2009-10-19T08:30:13.427 に答える
1

css、js などの後に最後にロードする必要がある場合は、 defer 属性を使用できます。

iframe defer src="//player.vimeo.com/video/89455262"
于 2014-04-11T12:42:54.307 に答える
-1

CSS を使用して iframe に display:none を適用し、jQuery の .show を次のように使用することもできます。

$(document).ready(function(){ 
    $('iframe.class_goes_here').show(); 
});
于 2010-12-21T04:01:30.437 に答える
-2

または私の好きな使い方

setTimeout('your app', 6000)

これにより、関数を呼び出すのにxミリ秒待機します。

于 2009-10-19T13:38:55.017 に答える