我有一个导航,通过AJAX将内容加载到页面上的特定元素中:
<ul class="main-nav-child">
<li><a href="/collections/page1">page 1</a></li>
<li><a href="/collections/page2">page 2</a></li>
<li><a href="/collections/page3">page 3</a></li>
</ul>
以下代码段实现了这一点:
$('ul.main-nav-child a').bind('click', function(e) {
var url = $(this).attr('href');
$(".main-content").load(url + " .product-grid-collection");
e.preventDefault(); // stop the browser from following the link
});
我的问题是:如何更新浏览器中的网址,以反映点击的链接以及。addClass
.active到该链接(以及前一个活动链接中的removeClass
) ,没有刷新页面?
更新:所以我现在设法在点击链接时获取要更改的网址,点击时我只需{。1}} .active到每个链接{{1前一个链接的.active。
这是我更新的代码:
addClass
非常感谢任何帮助/建议。
答案 0 :(得分:0)
我认为你正在寻找与劫持链接一起“替换” jQuery: hijack a link and find its parent
这将使用链接替换当前的html页面而不重新加载,然后您可以将链接添加到自定义pushstate数组,为您提供单页应用程序的外观