リダイレクトを発生させずにURLにフラグメントを追加しますか?


回答:


170
window.location.hash = 'something';

それは単なるJavaScriptです。

あなたのコメント...

こんにちは、私が本当に必要なのはハッシュだけを追加することです...このようなもの:window.location.hash = '#';しかしこの方法では何も追加されません。

これを試して...

window.location = '#';

また、window.location.replace()方法を忘れないでください。


こんにちは、私が本当に必要としているのは、ハッシュのみを追加することです...次のようなものです:window.location.hash = '#'; しかし、この方法では何も追加されません..
ディー

27

JavaScriptを必要としないストレートHTMLの場合:

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

または、質問をより文字通りに解釈するには、URLに「#」を追加するだけです。

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

あなたはハッシュを変更するには、リンクをクリックする必要があるとして、正しくない..あなたは、あなたが..「クリック」トリガーjsの一部欠けているので
フアン・

@Juanなぜクリックを「トリガー」する必要があるのですか?元の質問#は、URLにを追加する方法を尋ねたところです。私が提案したように実際にリンクをクリックすると、それが実現します。JSは必要ありません。
ジェステルフォード2015年

1
あなたの答えは、クリックするとURLにフラグメントを追加するリンクを作成する方法を説明しています。質問は、フラグメントを追加する方法を尋ねます。したがって、あなたの答えにはアクション、つまり「クリック」がありません
Juan

2
十分に公平なことですが、質問がそのように解釈されているのがわかります。うまくいけば、誰かがまだこのオプションが彼らのユースケースに役立つと思うでしょう。
ジェステルフォード

6
window.location.hash = 'whatever';

5
#接頭辞は必要ありません。
アレックス2010年

@alex:ああ、それが必要かどうかはよくわかりませんでした。window.location.hashは#プレフィックス付きのハッシュを返すので、そうだと思いました。説明をありがとう。:)
ダニエルロニグロ2010年

4
心配はいりません-そしてそれはなぜそれがいつもそれを返すのか不思議に思うでしょう。
アレックス2010年

0

これを試して

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

if (mainURL == URL) {
    mainURL += ( mainURL.match( /[\?]/g ) ? '&' : '#' ) + '_bypasssharerestrictions_';
    console.log(mainURL)
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.