Я использую history.pushstate, чтобы изменить URL -программно без какого -либо взаимодействия с пользователем (например, нажатие кнопки). Это прекрасно работает в Chrome и некоторых других браузерах, но в Firefox, когда я нажимаю кнопку Broulser Back, событие Popstate не стреляет, как и ожидалось. Событие POPSTATE должно стрелять. /> < /ul>
Вот упрощенная версия кода: < /p>
`window.addeventListener('lload ', () => {
astory.pushstate ({page: 1},' ',' /newurl ');
}); /> window.addeventListener('popstate ', (event) => {
console.log(''popstate запускается:', event.state);
}); `< /p>
то, что я пробовал: < /press> < /p>
in rouptate> < /p>
. SETTIMEOUT < /li>
Обеспечение того, чтобы DOM полностью загружен < /li>
Запуск pushstate из внутреннего domcontentloaded < /li>
Использование замены перед Pushstate < /li>
По -прежнему проблема сохраняется только в Firefox. :
Это известное поведение/ограничение Firefox при использовании Pushstate без взаимодействия с пользователем?
Есть ли обходной путь, чтобы надежно запустить событие Popstate в этом сценарии?
Любая помощь или объяснение будет оценено!
Подробнее здесь: https://stackoverflow.com/questions/796 ... ger-in-fir
ИСТОРИЯ.pushstate без взаимодействия с пользователем заставляет Popstate не запускать в Firefox - как это исправить? ⇐ Javascript
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение