我的网站上没有外部链接,所以我正在考虑选择所有锚标签:$('a')
并将当前标签值附加到所有这些标签的 href 中,但这似乎是一种混乱的方法。有一个更好的方法吗?我网站的 url 看起来像这样:www.rsadler.com/html/home.html#chairsAndTables
但是当你点击我的任何链接时,url 会更新,很明显,没有标签。谢谢!
问问题
82 次
3 回答
3
OP 实际上意味着页面会发生变化,但哈希需要结转到每个后续页面。
$('a').each(function(){
var href=this.href.split('#')[0];
$(this).attr('href', href + window.location.hash);
});
于 2013-02-05T18:38:43.960 回答
1
方法一:jQuery
$(document).ready(function() {
$("a").each(function(){ this.src += window.location.hash; });
});
方法 2:会话 Cookie
window.onload = function() {
var winHash = window.location.hash;
var cookieHash = unescape((document.cookie.match(new RegExp('\bhash=(.*?)(?:;|$)','i')) || [null,''])[1]);
if(winHash == "" && cookieHash.length > 0)
window.location.hash = cookieHash;
else if(winHash != "")
document.cookie = "hash=" + escape(winHash) + "; path=/";
}
注意我没有测试上面的JavaScript,所以可能有语法错误。
于 2013-02-05T18:55:06.953 回答
0
在链接的单击事件处理程序内的事件上调用preventDefault将阻止浏览器更新当前 URL。
于 2013-02-05T18:36:30.790 回答