Mam ramkę, którą chcę ponownie załadować, resetujęwszystkie wartości i zawartość strony, ale strona główna kontynuuje uruchamianie skryptów. Problem polega na tym, że w czasie potrzebnym do ponownego załadowania strony żądania są wysyłane do javascript stron, powodując błędy, ponieważ zasoby nie są ładowane.
top.document.getElementById("designer").contentWindow.location.reload()
top.document.getElementById("designer").contentWindow.getCSS()
Jak widać tutaj, strona może nie zostać ponownie załadowana na czas, więc jak to rozwiązać?
czy istnieje sposób, aby zatrzymać wykonywanie javascript do location.reload () zwraca prawdę czy coś?
Odpowiedzi:
1 dla odpowiedzi № 1Możesz skonfigurować onload
moduł obsługi dla twojego elementu iframe, aby Twój reload
nie uruchamia się
Przykładowy kod:-
function Test() {
iframe = document.getElementById("ABCD");
iframe.onload = function() {
location.reload(true);
}
//....
}
lub jeśli chcesz dodać jakieś opóźnienie czasowe, spróbuj wykonać następujące czynności: -
function Test() {
iframe = document.getElementById("ABCD");
iframe.onload = function() {
setTimeout(function() {location.reload(true)}, 5000);
}
//....
}