要素

<a> 要素はリンクを設定するために使用されます。 Web ページ要素の共通インターフェース (Node インターフェース、Element インターフェース、HTMLElement インターフェース) に加えて、HTMLAnchorElement インターフェースおよび HTMLHyperlinkElementUtils インターフェースも継承します。

プロパティ

URL 関連のプロパティ

<a> 要素には、リンク アドレスを操作するために使用できる一連の URL 関連の属性があります。これらのプロパティの意味は、「Location」オブジェクトのインスタンス プロパティで確認できます。

  • ハッシュ: フラグメント識別子 (# で始まる)
  • host: ホストとポート (デフォルトのポート 80 と 443 は省略されます)
  • ホスト名: ホスト名
  • href: 完全な URL
  • 発信元: プロトコル、ドメイン名、ポート
  • パスワード: ホスト名の前のパスワード
  • パス名: パス (/ で始まる)
  • ポート: ポート
  • プロトコル: プロトコル (末尾のコロン「:」を含む)
  • 検索: クエリ文字列 (? で始まる)
  • ユーザー名: ホスト名の前のユーザー名
// HTMLコードは以下の通り
// <a id="test" href="http://user:passwd@example.com:8081/index.html?bar=1#foo">テスト</a>
var a = document.getElementById('test');
a.hash // "#foo"
a.host // "example.com:8081"
a.hostname // "example.com"
a.href // "http://user:passed@example.com:8081/index.html?bar=1#foo"
a.origin // "http://example.com:8081"
a.password // "パスワード"
a.pathname // "/index.html"
a.port // "8081"
a.protocol // "http:"
a.search // "?bar=1"
a.username // "ユーザー"

読み取り専用の「origin」プロパティを除き、これらのプロパティはすべて読み取り/書き込み可能です。

accessKey 属性

accessKey 属性は、<a> 要素のショートカット キーの読み取りと書き込みに使用されます。

// HTMLコードは以下の通り
// <a id="test" href="http://example.com">テスト</a>
var a = document.getElementById('test');
a.accessKey = 'k';

上記のコードは、<a> 要素のショートカット キーを k に設定します。今後、このショートカット キーが押されている限り、ブラウザは example.com にジャンプします。

ブラウザやオペレーティング システムが異なれば、ショートカット キー (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/accesskey) を呼び出すためのファンクション キーの組み合わせも異なることに注意してください。たとえば、Linux システムでは、Chrome ブラウザで「example.com」にジャンプするには「Alt + k」を押す必要があります。

ダウンロード属性

「download」属性は、現在のリンクが閲覧用ではなくダウンロード用であることを示します。その値は、ユーザーがダウンロードしたファイル名を表す文字列です。

// HTMLコードは以下の通り
// <a id="test" href="foo.jpg">ダウンロード</a>
var a = document.getElementById('test');
a.download = 'bar.jpg';

上記のコードでは、<a> 要素は画像リンクです。デフォルトでは、画像はクリック後に現在のウィンドウにロードされます。 「download」属性を設定してこのリンクをクリックすると、ダウンロードダイアログボックスが表示され、保存場所を尋ねられます。ダウンロードされるファイル名は「bar.jpg」です。

hreflang 属性

hreflang 属性は、<a> 要素の HTML 属性 hreflang の読み書きに使用されます。これは、リンクが指すリソースの言語を示します (たとえば、hreflang="en")。

// HTMLコードは以下の通り
// <a id="test" href="https://example.com" hreflang="en">テスト</a>
var a = document.getElementById('test');
a.hreflang // "en"

ReferrerPolicy 属性

referrerPolicy 属性は、<a> 要素の referrerPolicy HTML 属性の読み取りおよび書き込みに使用されます。これは、ユーザーがリンクをクリックしたときに HTTP ヘッダー情報の referer フィールドを送信する方法を指定します。

HTTP ヘッダー情報の「referer」フィールドは、現在のリクエストがどこから来たのかを示します。その形式は <a> 要素の referrerPolicy 属性で指定でき、3 つの値から選択できます。

  • no-referrer: referr フィールドを送信しません。
  • origin: referer フィールドの値は、<a> 要素の origin 属性、つまりプロトコル + ホスト名 + ポートです。
  • unsafe-url: referer フィールドの値は、origin 属性にパスを加えたものですが、# フラグメントは含まれません。この形式は最も詳細な情報を提供するため、情報漏洩の危険性があります。
// HTMLコードは以下の通り
// <a id="test" href="https://example.com" Referrerpolicy="no-referrer">テスト</a>
var a = document.getElementById('test');
a.referrerPolicy // "リファラーなし"

rel 属性

rel 属性は、リンクと現在のドキュメント間の関係を示す <a> 要素の HTML 属性 rel の読み取りと書き込みに使用されます。

// HTMLコードは以下の通り
// <a id="test" href="https://example.com" rel="license">license.html</a>
var a = document.getElementById('test');
a.rel // "ライセンス"

tabIndex プロパティ

tabIndex 属性の値は整数で、ドキュメント内の現在の <a> 要素のタブ キーの移動順序の読み取りおよび書き込みに使用されます。

// HTMLコードは以下の通り
// <a id="test" href="https://example.com">テスト</a>
var a = document.getElementById('test');
a.tabIndex // 0

ターゲット属性

target 属性は、<a> 要素の HTML 属性 target の読み取りと書き込みに使用されます。

// HTMLコードは以下の通り
// <a id="test" href="https://example.com" target="_blank">テスト</a>
var a = document.getElementById('test');
a.target // "_blank"

テキスト属性

text 属性は、<a> 要素のリンク テキストの読み書きに使用されます。これは、現在のノードの textContent 属性に相当します。

// HTMLコードは以下の通り
// <a id="test" href="https://example.com">テスト</a>
var a = document.getElementById('test');
a.text // "テスト"

型属性

type 属性は、リンク ターゲットの MIME タイプを表す <a> 要素の HTML 属性 type の読み取りおよび書き込みに使用されます。

// HTMLコードは以下の通り
// <a id="test" type="video/mp4" href="example.mp4">ビデオ</a>
var a = document.getElementById('test');
a.type // "ビデオ/mp4"

方法

<a> 要素のメソッドはすべて継承されており、主に以下の 3 つが含まれます。

  • blur(): 現在の要素からキーボード フォーカスを削除します。詳細については、HTMLElement インターフェイスの概要を参照してください。
  • focus(): 現在の要素がキーボード フォーカスを取得します。詳細については、HTMLElement インターフェイスの概要を参照してください。
  • toString(): 現在の <a> 要素の HTML 属性 href を返します。

作者: wangdoc

アドレス: https://wangdoc.com/

ライセンス: クリエイティブ・コモンズ 3.0