使用JQuery更改DIV的内容时,也要更改URL


Change the URL also when changing the content of DIV with JQuery?

我想实现类似Facebook的功能,即顶部栏保持不变,只有其下方的内容会针对不同的页面进行更改。与此同时,顶部的URL也会发生变化,例如/messages或/events。

我不完全确定Facebook是否就是这样运作的,但我正在努力实现这样的目标。。。现在我不知道该怎么做。。。

有人知道这是如何实现的吗?或者有没有名字?

您可以使用当前所有页面上的固定页眉来完成此操作,这样无论何时加载新页面,页眉都会出现,或者您可以使用更复杂的方法,将所有页面放在一个页面上的单独div中,并在单击链接时隐藏/显示相应的div。我个人推荐第一种方式,但也有一些选择。我相信还有其他方法可以解决这个问题。

如果这不是你想要的,那么我道歉。

编辑:此外,我的第一个建议是加载一个全新的页面,所以如果你想要无缝过渡效果,那么第二个选项将是更好的路径

也许是模板?据我所知,如果不导航到另一个页面,你就无法更改URL。如果你希望页面上的元素保持一致,内容各异,这基本上就是模板的功能。

如果您正在寻找显示在页面上的动态元素,那么您应该研究AJAX和DOM操作。jQuery是帮助实现这两个功能的实际库。看看http://api.jquery.com/并且可能搜索模板引擎。大多数web框架都包含一个模板系统,用于创建一致的样式并允许代码重用。

您可以使用#anchors,这不会重新加载页面。对于较新的浏览器,您可以使用https://developer.mozilla.org/en-US/docs/Web/Guide/DOM/Manipulating_the_browser_history更新url而不重新加载页面