Location.hash - フラグメント識別子(#〜)を取得、変更する
投稿日: / 更新日:
JavaScriptの、Locationオブジェクトのhash
は、フラグメント識別子(#〜)を参照、変更するプロパティです。
説明
Locationオブジェクトのhashプロパティは、フラグメント識別子(#〜)を含みます。アンカーとも呼ばれます。識別子がない場合は、ハッシュ(#
)を含まない空の文字列が返ります。
https://syncer.jp/index.html#section-1
新しく値を指定すれば、現在のフラグメント識別子を変更できます。指定する値にハッシュ(#
)は含めません。これに伴って、ブラウザのURLアドレス表示部分も変更されます。フラグメント識別子に応じたid属性を持っている要素が存在する場合、その要素の位置までスクロールします。
サンプルコード
https://syncer.jp/index.html#section-1
// フラグメント識別子を取得 ( → "section-1" )
var hash = window.location.hash ;
// フラグメント識別子を変更
window.location.hash = "section-2" ;
デモ
window.location.hash
を取得して表示します。URLアドレス欄に反映される挙動を確認したい場合は、お手数ですが、新しいウィンドウを開いてお試し下さい。
構文
string hash = Location.hash
Location.hash = string newHash
返り値
項目 | 説明 |
---|---|
hash | 現在のURLのフラグメント識別子。ない場合はハッシュ(# )を含まない空の文字列。 |
指定する値
項目 | 説明 |
---|---|
newHash | 新しく設定したいフラグメント識別子。ハッシュ(# )は含まない。 |
関連項目
- Location - ブラウザロケーションのオブジェクト。
- Location.hash - フラグメント識別子(#〜)を取得、変更する。
- Location.host - ホスト名とポートを取得、変更する。
- Location.hostname - ホスト名を取得、変更する。
- Location.href - 完全なURLを取得、変更する。
- Location.pathname - パスを取得、変更する。
- Location.port - ポート番号を取得、変更する。
- Location.protocol - プロトコルを取得、変更する。
- Location.search - クエリを取得、変更する。
外部リンク
- HTML Living Standard - WHATWGによる仕様書。