我是第一个使用mvc 4的站点,站点使用大量异步请求,到目前为止它们是可管理的,基本上这是一个页面,它显示来自网格中数据库的记录,并允许用户根据从某些选项中的选择过滤它们提出这些要求的下降。
现在业务需求指向过滤发生时更新URL,以便用户可以通过复制粘贴URL共享过滤后的记录,我想知道是否有办法实现它,就像Instagram显示的图像一样点击模型弹出窗口并更新URL,以便用户可以共享它,所以在通过主页导航到通知时也会发布。
任何建议都将受到高度赞赏。 提前致谢。
答案 0 :(得分:2)
Instagram使用Javascript History API通过javascript更改网址,而不进行重定向。看看https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history
// Suppose http://mozilla.org/foo.html executes the following JavaScript:
var stateObj = { foo: "bar" }; history.pushState(stateObj, "page 2",
"bar.html"); This will cause the URL bar to display
// http://mozilla.org/bar.html, but won't cause the browser to load bar.html
// or even check that bar.html exists.
对于MVC友好的js库,您可以使用History.JS http://balupton.github.io/history.js/demo/?state=2