Итак, я создаю некоторый HTML, используя javascript, в зависимости от того, где пользователь нажимает на страницу. При загрузке страницы скрипт заменяет пустой div на ul и некоторые данные. Пользователь нажимает на эти данные, чтобы получить больше и так далее. Теперь, когда пользователь переходит со страницы, а затем нажимает кнопку «Назад», чтобы вернуться на страницу, IE отображает пустую страницу с замененными div, во всех других браузерах, FF, Opera, Safari, страница либо перезагружается до начальной ul. или возвращается в последнее состояние с динамическими данными в нем.
У кого-нибудь есть идея, что здесь может происходить? Любая помощь приветствуется.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Похоже, вам нужно управлять историей и состоянием вашей страницы. Посмотрите Действительно простая история нашего Брэда Нойберга.
Поведение событий onload при перемещении вперед и назад не является стандартным кроссбраузерным. Как правило, я обнаружил, что при обратном нажатии события onload не работают, поскольку браузер загружает их из кеша, а не повторно запрашивает страницу. Что вы можете попробовать, так это использовать событие готовности dom, а не загрузку окна.
Ответ Трулля правильный. Opera и более поздние версии Firefox (> 1.5) не рассматривают загрузку страницы из кеша как требующую запуска события onload, поскольку полное состояние DOM также кэшируется.
Это тривиально стандартизировать для разных браузеров, поскольку Opera и Firefox не демонстрируют такого поведения, если вы определяете событие window.onunload. См. http://developer.mozilla.org/en/Using_Firefox_1.5_caching
не знал, это действительно полезно!
Вы используете document.write ()? Думаю, нам может понадобиться макет, чтобы действительно разобраться в проблеме.