Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 向URL添加一个片段而不导致重定向?_Javascript_Jquery_Hash - Fatal编程技术网

Javascript 向URL添加一个片段而不导致重定向?

Javascript 向URL添加一个片段而不导致重定向?,javascript,jquery,hash,Javascript,Jquery,Hash,有没有办法在不重定向的情况下将哈希添加到我的URL window.location.hash = 'something'; 这只是简单的JavaScript 你的评论 嗨,我真正需要的是只添加散列。。。类似这样的内容:window.location.hash='#'但这样就不会添加任何内容 试试这个 window.location = '#'; 另外,不要忘记window.location.replace()方法。对于纯HTML,不需要JavaScript: window.location.

有没有办法在不重定向的情况下将哈希添加到我的URL

window.location.hash = 'something';
这只是简单的JavaScript

你的评论

嗨,我真正需要的是只添加散列。。。类似这样的内容:
window.location.hash='#'但这样就不会添加任何内容

试试这个

window.location = '#';

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

对于纯HTML,不需要JavaScript:

window.location.hash = 'whatever';
<a href="#something">Add '#something' to URL</a>

或者,更确切地说,只需在URL中添加“#”:

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

试试这个

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

if (mainURL == URL) {
    mainURL += ( mainURL.match( /[\?]/g ) ? '&' : '#' ) + '_bypasssharerestrictions_';
    console.log(mainURL)
}

#
前缀不是必需的。@alex:啊,我不太确定它是不是必需的。window.location.hash返回带有#前缀的哈希,因此我假设它是。感谢您的澄清。:)不用担心-这让你想知道为什么它总是返回它。嗨,我真正需要的是只添加散列。。。类似这样的内容:window.location.hash='#';但是用这种方式没有添加任何内容..不正确,因为您需要单击链接来更改哈希。。所以你错过了触发“点击”的js部分。@Juan为什么我们需要“触发”点击?最初的问题只是问我们如何将
#
添加到URL。实际上,按我的建议点击一个链接就可以实现这一点。不需要JS。您的答案描述了如何创建链接,当单击时,该链接会向url添加一个片段。问题是如何添加片段。所以你的答案缺少行动,也就是说,“点击”足够公平,我可以看到问题被这样解释。希望有人仍然会发现这个选项对他们的用例有用。