JavaScriptでarea要素のhref属性からクエリ文字列を取得するには?searchプロパティの使い方
HTMLの<area>要素に設定されたリンク先URLのうち、クエリ文字列(?id=companyのような「?」以降の部分)だけを取り出したい場面は意外と多くあります。JavaScriptでは、searchプロパティを使うだけで、このクエリ文字列部分を簡単に取得できます。
searchプロパティは、href属性のURLから「?」とそれに続くパラメータ部分をそのまま文字列として返します。以下のサンプルコードで、実際の動きを確認してみましょう。
サンプルコード
<!DOCTYPE html>
<html>
<body>
<img src="/images/html.gif" alt="HTML Map" border="0" usemap="#html"/>
<map name="html">
<area id="myarea" shape="circle" coords="154,150,59" href="about.htm?id=company" alt="Team" target="_self">
</map>
<script>
var x = document.getElementById("myarea").search;
document.write("<br>Querystring: " + x);
</script>
</body>
</html>実行結果
Querystring: ?id=company
コードの解説
document.getElementById("myarea")で、idが「myarea」の<area>要素を取得します。.searchにアクセスすると、href属性「about.htm?id=company」のうち、クエリ文字列である「?id=company」の部分が返されます。document.write()で、その結果を画面に出力しています。
ポイント
searchプロパティは「?」記号自体も含めて返す点に注意してください。「?」を除いた純粋なパラメータ部分が必要な場合は、x.substring(1)のように先頭の1文字を取り除くか、近年のブラウザではURLSearchParamsオブジェクトを使って各パラメータを個別に扱うのが便利です。
-
JavaScriptでHTMLキャンバスに描画する方法をわかりやすく解説
HTMLキャンバス(canvas)への描画は、JavaScriptを使って行います。キャンバスに描画する前に、HTML DOMメソッドのgetElementById()とgetContext()を使用する必要があります。ここでは、JavaScriptでキャンバスに図形を描画する基本的な手順を紹介します。キャンバスに描画する基本手順getElementById()メソッドを使って、HTML内のキャンバス要素を取得します。getContext()メソッドを呼び出して、描画用のオブジェクトを取得します。このオブジェクトが、図形を描くための各種メソッドやプロパティを提供します。取得した描画オブジェクト
-
HTMLのarea要素におけるhref属性の使い方を徹底解説
HTMLの<area>要素におけるhref属性は、クリック可能な領域(イメージマップ)にリンク先を設定するための重要な属性です。この記事では、href属性の基本的な構文から実際のコード例まで、わかりやすく解説します。href属性の基本構文<area>要素のhref属性は、ハイパーリンクのリンク先(ターゲット)を指定します。基本的な構文は以下のとおりです。<area href=URL>ここで指定する「URL」には、相対パス、絶対パス、スクリプト、各種プロトコルなど、さまざまな形式のリンク先を設定できます。実装例:イメージマップでhref属性を使うそれでは、&l