Я работаю с API истории и использую push и pop state. Я хочу остановить событие popstate от стрельбы в каком-то сценарии, где я только добавляю хэш в URL. например, в некоторых случаях при щелчке на якоре он добавляет #
к URL-адресу, а popstate сразу же запускается). Я хочу избежать всех сценариев, в которых #
или #somehasvalue
добавляется к URL-адресу и останавливает popstate от обстрела. Я поддерживаю URL-адрес с параметрами запроса, и у меня нет сценария, в котором мне нужно событие popstate для запуска с #
в URL-адресе.
Вот мой код.
if (supportsHistoryApi()) {
window.onpopstate = function (event) {
var d = event.state || {state_param1: param1, state_param2: param2};
var pathName = window.location.pathname,
params = window.location.search;
loadData(event, pathName + params, d.state_param1, d.state_param2);
}