将片段添加到URL而不引起重定向?


86

有没有一种方法可以将哈希号添加到我的URL中而无需重定向?

Answers:


170
window.location.hash = 'something';

那只是普通的JavaScript。

你的评论...

嗨,我真正需要的是仅添加哈希...像​​这样:window.location.hash = '#';但是这样就什么也没有添加。

试试这个...

window.location = '#';

另外,不要忘记该window.location.replace()方法。


嗨,我真正需要的只是添加哈希...像​​这样:window.location.hash ='#'; 但这种方式没有被添加..

27

对于纯HTML,不需要JavaScript:

<a href="#something">Add '#something' to URL</a>

或者,从字面上看您的问题,只需在URL中添加“#”即可:

<a href="#">Add '#' to URL</a>

不正确的,因为你需要点击链接来改变哈希..所以你缺少JS部分,你触发“点击” ..
胡安

@Juan为什么我们需要“触发”点击?最初的问题只是问我们如何#将URL添加到URL。实际上,按我的建议单击一个链接即可实现。无需JS。
杰西·特尔福德

1
您的答案描述了如何创建一个链接,当单击该链接时,会将一个片段添加到URL。问题询问如何添加片段。所以,你的答案是缺少的动作,也就是“点击”
胡安

2
公平地说,我可以看到问题被这样解释。希望有人仍然会发现此选项对他们的用例有用。
2015年


0

试试这个

var URL = "scratch.mit.edu/projects";
var mainURL = window.location.pathname;

if (mainURL == URL) {
    mainURL += ( mainURL.match( /[\?]/g ) ? '&' : '#' ) + '_bypasssharerestrictions_';
    console.log(mainURL)
}
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.