14

jQueryモーダルをロードしたいときに呼び出される を含む多くの非表示の<div>タグがあります。(display: none)これらの各<div>タグに<iframe>は、異なるページを呼び出す が含まれています。

ページのロードが非常に遅くならないようにするために、モーダルで<iframe>を呼び出すまで、 がページをロードしないようにする方法があるかどうか疑問に思っています。<div>

4

2 に答える 2

16

iframe の html に空の src を指定し、後で jquery / javascript によって src を割り当てることで、html がレンダリングされた後に iframe をロードできます。

HTML

<iframe id="iframe1" ></iframe>

Javascript、iframe は、ボタンのクリックなどのアクションで読み込まれる可能性があります

document.getElementById('iframe1').src="/default.aspx";

kern3lが言ったように、ハードコーディングの代わりに src を保持するために iframe に data 属性を追加できます。

HTML

<iframe id="iframe1" data-frameSrc="/default.aspx"></iframe>

Javascript

ifrmame1 = $('#iframe1')
ifrmam1.src = ifrmam1.data("frameSrc");

jquery で新しいフレームを作成して src を割り当てることもできます。これにより、空白のフレームでページが読み込まれます。

$('<iframe>', {
   src: '/default.aspx',
   id:  'myFrame',
   frameborder: 0,
   scrolling: 'no'
   }).appendTo('#parentDivId'); 

また

var iframe = document.createElement('iframe');
iframe.frameBorder=0;
iframe.width="300px";
iframe.height="250px";
iframe.id="myFrame";
iframe.setAttribute("src", '/default.aspx');
document.getElementById("parentDivId").appendChild(iframe);
于 2013-02-14T05:20:05.343 に答える
3

iframe を 1 つだけ使用します。

<iframe id='page' src=''></iframe>

次にassign srceach click_ button/link_

これがhtmlであるとします:

<ul>
  <li><a href='myfolder/myPage1.html'>Page 1</a></li>
  <li><a href='myfolder/myPage2.html'>Page 2</a></li>
</ul>

次にjquery:

$('ul li a').click(function(e){
   e.preventDefault();
   $('#page').attr('src', $(this).attr('href'));
});
于 2013-02-14T05:50:12.650 に答える