Загружать только HTML в IFRAME - PullRequest
0 голосов
/ 17 мая 2009

Как я могу только загрузить HTML страницы в IFRAME, не вызывая автоматическую загрузку всех CSS, сценариев, изображений, видео на странице?

Или вы можете получить событие в тот момент, когда DOM "готов" ... когда начальный HTML загружен и ничего более.

Ответы [ 4 ]

3 голосов
/ 17 мая 2009

Чтобы получить только содержимое HTML, попробуйте использовать вызов AJAX. Это, конечно, вернет содержимое в переменной, но вы можете обработать его так, как считаете нужным.

3 голосов
/ 17 мая 2009

Нет кросс-браузерного способа сделать это. Некоторые браузеры предоставляют события, которые возникают при загрузке DOM, например DOMContentLoaded для Gecko.

jQuery реализует эту функцию . Я предлагаю вам использовать для этого jQuery:

$(document).ready(function () {
  // Function is called when the DOM is loaded.
});

Или проверьте, как это реализует jQuery. См. Функцию bindReady в исходном коде jQuery .

2 голосов
/ 18 мая 2009

Установите тип контента для этой HTML-страницы как text / plain.

2 голосов
/ 17 мая 2009

Короткий ответ: «Вы не можете».

Internet Explorer поддерживает собственный атрибут , который может помешать выполнению сценария s, но он не является кросс-браузерным и не работает с изображениями или таблицами стилей.

Некоторые библиотеки JS реализуют пользовательское событие, которое запускается, когда DOM готов - но браузеры загружают ресурсы параллельно, поэтому, хотя это событие может сработать до загрузки всех изображений и таблиц стилей, маловероятно выстрелить до того, как начнут загружаться другие элементы.

Если вы действительно хотите, чтобы страница загружалась без этих вещей, обработайте ее на сервере, чтобы удалить HTML-код, включающий их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...