Ответ 1
<iframe>
для этого элемента load
.
Как вы слушаете, что это событие зависит от вас, но, как правило, лучший способ:
1) создайте ваш iframe программно
Это гарантирует, что ваш слушатель load
всегда вызывается, прикрепляя его до начала загрузки iframe.
<script>
var iframe = document.createElement('iframe');
iframe.onload = function() { alert('myframe is loaded'); }; // before setting 'src'
iframe.src = '...';
document.body.appendChild(iframe); // add it to wherever you need it in the document
</script>
2) встроенный javascript, это еще один способ, который вы можете использовать в своей разметке HTML.
<script>
function onMyFrameLoad() {
alert('myframe is loaded');
};
</script>
<iframe id="myframe" src="..." onload="onMyFrameLoad(this)"></iframe>
3) Вы также можете присоединить прослушиватель событий после элемента в теге <script>
, но имейте в виду, что в этом случае есть небольшая вероятность, что iframe уже загружен к моменту добавления ваш слушатель. Поэтому возможно, что он не будет вызываться (например, если iframe очень быстро или выходит из кеша).
<iframe id="myframe" src="..."></iframe>
<script>
document.getElementById('myframe').onload = function() {
alert('myframe is loaded');
};
</script>
Также см. мой другой ответ о какие элементы могут также запускать этот тип события load