【发布时间】:2011-07-09 18:19:41
【问题描述】:
我正在开发一个通过 AJAX 提供内容的网站。
如果您单击菜单中的某个项目,内容 div 会更新为 $.get 响应,没什么特别的。
我正在实现history.pushState 以允许使用浏览器的后退/前进按钮进行导航。
我有以下内容可以在历史导航中加载内容:
$(function() {
$(window).bind("popstate", function() {
$.getScript(location.href);
});
});
问题是,当第一次加载页面时,这个函数会$.getScript所以页面会立即再次加载。第一次加载页面时,它会呈现初始 HTML 视图,然后在第二次加载时,它会呈现 JS 视图,因为它是一个 JS 请求。
如何防止在带有 HTML 请求的页面上触发此事件?
【问题讨论】:
-
注意:history.popstate 被调用一次 - 在第一页加载时立即调用:这是设计使然。 (在 Chrome 中检查)
标签: javascript jquery history getscript popstate