1

HEADページに次のコードがあります。

    <script  type="text/javascript">        
$(document).ready(function(){
    $(".open_popup_clips").colorbox({width:"520px",height:"480px", iframe:true});       
});
</script>  

その結果、ポップアップはページの読み込みが完了したときにのみ正しく開き、それ以前
は通常の方法でブラウザウィンドウにリンクが開きます。
ページが完全に読み込まれる前に、ポップアップでリンクを開く方法です。このコードブロックをBODYに配置しようとしましたが、うまくいきませんでした。
もちろん、ロードプロセスを高速化するのが最善ですが、とりあえずそのままにしておきましょう。

リプレイに感謝し、良い一日を過ごしてください:-)

4

2 に答える 2

1

ここには2つのオプションがあります。

1つは、JavaScriptコードを。なしでBODYの下部に配置することdocument.readyです。document.readyこれはバインディングよりも高速になります。

2つ目は、呼び出している要素のすぐ下にJavaScriptコードを配置することですcolorbox。これはもう少し面倒ですが、要素がDOMに追加された直後に呼び出され、最速のオプションです。

レディイベントよりも速いものがこの種のものに行く限り、これらはほとんどあなたの唯一のオプションです。

スカーリービルに足を踏み入れたい場合は、次のサイトをチェックしてください。http : //javascriptisawesome.blogspot.com/2011/07/faster-than-jquerydocumentready-wait.html 正直なところ、私はこれまで試したことがありません。

于 2011-08-15T13:11:30.810 に答える
1

Adamの答えは通常、良いアドバイスですが、DOMがロードされるのを待ってからドキュメントにマークアップを追加するため、現在のバージョンのカラーボックスには役立ちません。より早く(たとえば、カラーボックスを使用する要素の直後に)実行するには、jquery.colorbox.jsファイルを少し編集する必要があります。次の行を次のようにコメントアウトします。

// $(publicMethod.init);

次に、カラーボックスを初期化する準備ができたら、手動でinit()を呼び出します。例:

<a href='1.jpg' class='example'>1</a>
<a href='2.jpg' class='example'>2</a>
<a href='3.jpg' class='example'>3</a>
<script>
  $.colorbox.init();
  $('a.example').colorbox();
</script>
于 2011-08-16T22:24:15.187 に答える