В этом фрагменте кода:
theIframe.src = ...;
stuff();
вы звоните stuff()
немедленно, вопреки тому, что вы описали, так что на самом деле вы не даете времени для загрузки страницы.Возможно, вы не понимаете, как работает setTimeout
: он просто планирует одно выполнение по истечении указанного времени, автоматически не задерживает все вызовы функции.
Кроме того, вы можете использовать только clearTimeout
с предыдущим идентификатором, возвращаемым setTimeout
, а не с кодом, как у вас сейчас.
Попробуйте что-то вроде этого:
window.onload = function() {
loadFrame();
}
function loadFrame() {
theIframe = ...;
theIframe.src = ...;
setTimeout(setSomething, 2000);
}
function setSomething() {
theIframe.setMe = true;
}