我以以下方式使用jQuery地址插件:1.用户访问主站点(example.com)2.用户点击文章标题。地址插件将地址更改为 (example.com/article-1),Ajax 将文章加载到页面中。3.用户“关闭”这篇文章。地址插件将地址更改为(example.com)并从页面中删除文章。
如果用户按下后退/前进按钮,页面将后退/前进此步骤。
这是工作流程。但是,当用户处于第 2 步(文章已加载)时,我注意到了一个问题。(example.com/article-1) 链接到真实文章页面。因此,如果在该步骤中用户按下重新加载浏览器按钮会转到文章唯一页面。这是意料之中的。但是,如果他按下后退按钮,则地址更改为(example.com)(预期)但不重新加载页面,当它应该重新加载时,它会卡在这个 article-unique-page 中,因为它通常会在没有插件的情况下重新加载到(example.com)。
$.address.state('example.com');
$.address.change(function(event) {
if (event.value == 'example.com') {
close_article();
$.address.value('');
} else {
open_article();
$.address.value(event.value);
}
});