Запретить загрузку содержимого скрытого iframe
у меня много скрытых <div>
теги, с (display: none)
, который я вызываю, когда хочу загрузить модальный jQuery.
Каждый из этих <div>
содержать теги <iframe>
который вызывает другую страницу.
чтобы моя страница не загружалась болезненно медленно, мне интересно, есть ли способ предотвратить <iframe>
от загрузки страницы, пока я не вызову <div>
в режимное?
2 ответов
вы можете загрузить iframes после отображения html, предоставив пустой src в html iframe и позже назначив src jquery / javascript.
HTML-код
<iframe id="iframe1" ></iframe>
Javascript, iframe может быть загружен на некоторые действия, как кнопка нажмите
document.getElementById('iframe1').src="/default.aspx";
As kern3l сказал, Мы можем добавить атрибут данных в iframe для проведения src вместо жесткого кодирование.
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);
просто используйте один iframe:
<iframe id='page' src=''></iframe>
затем assign src
on each 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'));
});