在我的页面上,我使用此代码设置了3个标签以及一些CSS
<ul class="subnav" id="subnav">
<li class="active"><a href="#subover">Overview</a></li>
<li><a href="#subnews">News</a></li>
<li><a href="#subgallery">Gallery</a></li>
</ul>
在新闻标签内,我正在使用.load来填充页面arc.php和id = news。
<div class="subcont" id="subnews">
<script>
jQuery(document).ready(function ($) {
$('#subnews').append($('<div>').load('arc.php #news'));
});
</script>
</div>
在arc.php页面上,我有包含文章链接的新闻说明。单击文章链接时。我希望它加载到subnews div。我正是这样做的。
<script>
jQuery(document).ready(function ($) {
$("#subnews").on("click", "a", function (e) {
$("#subnews").load($(this).attr("href"));
e.preventDefault();
});
});
</script>
现在我的问题......
加载新闻文章后,网址不会更改,因此我无法使用返回新闻文章列表。
我确实有代码跟踪哈希标记,当我从概述,新闻和图库更改时,它可以正常工作。我可以使用返回标签。
有没有办法在点击文章时为网址添加哈希标记,以便使用跟踪并能够点击回来?
答案 0 :(得分:5)
我建议:
$("#subnews").on("click", "a", function (e) {
var href = $(this).attr('href');
$("#subnews").load(href);
window.location.hash = href;
e.preventDefault();
});
但我看不出有任何理由使用$(this).attr('href')
,而是亲自使用,而不是:
$("#subnews").on("click", "a", function (e) {
var href = this.href;
$("#subnews").load(href);
window.location.hash = href;
e.preventDefault();
});
参考文献: