HTML5历史API弹出状态重新加载野生动物园刷新页面无休止

HTML5 History API popstate reload safari refreshes page endlessly

本文关键字:动物园 刷新 无休止 加载 API 历史 状态 新加载 HTML5      更新时间:2023-09-26

当我用这段代码点击"后退"按钮时,我 fonud safari 会无休止地刷新页面

window.addEventListener('popstate', function() {
  location.reload();
});

Chrome和IE都很好。如何解决此问题?

谢谢

尝试使用

location.reload(true);

应该适用于野生动物园)MDN 链接

这个黑客对我有用:/

https://gist.github.com/voku/854fef3b9a3fbf10624f

/**
 * reload on history-back with "history.pushState" usage
 *
 * Necessary hack because WebKit fires a popstate event on document load
 * https://code.google.com/p/chromium/issues/detail?id=63040
 * https://bugs.webkit.org/process_bug.cgi
 */
$(window).bind('load', function() {
  if (Modernizr.history) {
    setTimeout(function() {
      $(window).bind('popstate', function() {
        location.reload();
      });
    }, 0);
  }
});