Обычно вы можете использовать window.onload
, но вы можете заметить, что последние браузеры не запускают window.onload
при использовании кнопок истории назад / вперед.
Некоторые люди предлагают странные искажения, чтобы обойти эту проблему, но на самом деле, если вы просто сделаете обработчик window.onunload
(даже тот, который ничего не делает), это поведение кэширования будет отключено в все браузеры. MDC довольно хорошо документирует эту «особенность», но по некоторым причинам все еще есть люди, использующие setInterval
и другие странные хаки.
В некоторых версиях Opera есть ошибка, которую можно обойти, добавив следующее где-то на вашей странице:
<script>history.navigationMode = 'compatible';</script>
Если вы просто пытаетесь получить функцию javascript, вызываемую один раз для каждого просмотра (и не обязательно после завершения загрузки DOM), вы можете сделать что-то вроде этого:
<img src="javascript:location.href='javascript:yourFunction();';">
Например, я использую этот трюк для предварительной загрузки очень большого файла в кэш на экране загрузки:
<img src="bigfile"
onload="this.location.href='javascript:location.href=\'javascript:doredir();\';';doredir();">