web-dev-qa-db-ja.com

URLフラグメント内の複数のパラメーター

URIフラグメントで複数のパラメーターを指定できる標準形式はありますか? (ハッシュ#の後の部分、notクエリ文字列。)

最も関連する情報は次の質問です: 複数のフラグメント識別子はURLで正しいですか? 。フラグメントに許可されている文字は、その質問にも記載されています。

たとえば、次のように複数のパラメータを区切るためにセミコロンを使用することは許容されますか?

http://example.net/page.html?q=1#param1=foo;param2=bar

この方法で知っておくべき意図しない動作はありますか?値がparam1のそのようなIDがドキュメントにない場合はどうなりますか?

この質問では、HTMLリソースのURIのみが考慮されます。

17

私はあなたがこれを読むべきだと思います: http://en.wikipedia.org/wiki/Fragment_identifier#Examples

したがって、複数のパラメータのデファクトスタンダード形式は#param1=value1&param2=value2である必要があります。この方法は Media Fragments URI 1. およびPDFドキュメント)で使用されていることがわかります。 JavaScriptでフラグメントを好きなように解析できるので、HTMLリソースの標準はないようですが、クエリ文字列形式に似ているので、より自然に見えるので同じ形式を使用します。ブラウザが見つからない場合id/nameがハッシュフラグメントと等しい要素は、デフォルトでドキュメントの先頭に移動します。

また、ブラウザは完全なハッシュフラグメントを可能なID /名前と見なします。したがって、param1=value1&param2=value2だけでなくparam1に等しいID /名前を探します。

11
lagivan