HTML
Этот метод просто использует атрибут onload
для вызова функции после загрузки содержимого кадра.
<iframe id="some_frame" onload="on_iframe_load(this)">
....
</iframe>
Очевидно, убедитесь, что функция on_iframe_load(_this)
присутствует в вашем коде JS.
Чтобы объяснить далее, почему мы передаем this
в on_iframe_load()
, следует понимать, что передача this
из элемента DOM передаст ссылку на элемент.
<script>
var on_iframe_load(_this) = () => {
_this.contentDocument.getElementById("something_in_this_frame").doWhatever(...);
}
</script>
Чистый JS
Если HTML
не плавает на вашей лодке, вы можете использовать onload
или addEventListener("load", ...)
, а затем получить доступ к элементам внутри iframe
с помощью указателя элемента и contentDocument
(Нет IE?)
<script>
document.getElementById("some_frame").onload = function() { // or you could use `addEventListener("load", function(){...})`
this.contentDocument.getElementById("some_element_in_frame").doThing(...)
}
</script>