親要素をクリックしたら子要素のリンクを発動させる方法

親要素をクリックしたら子要素のリンクを発動させる方法

  • 2017-02-04  最終更新日:2017-02-04

システム上の設定で自動的にはき出すhtmlの場合とかに有効な手段かもしれません。 a要素が複数でてきてその上の要素をクリックしたら下の要素が発動するような仕組みです。

例えばli要素の中にdiv要素とdl要素がありそこのdt要素内にa要素が入っているけどli要素全体をリンクにしたい場合の対処方法です。

cssでやる方法は一つ上の要素を全体リンクにする方法はありましたが子要素のリンクはなかったのでjQueryを使ってご紹介します。


HTMLファイルとjQuery

例として以下のhtmlとします。 li要素内にdiv要素とdl要素があります。li要素をクリックしたらdl要素内のdt要素の中のaリンクが発動するという仕組みです。

<div id="test">
<ul>
  <li>
  <div class="icon"><a href="#url1"><img src="/img/gazou.jpg"></a></div><dl>
  <dt><a href="#title1">タイトルタイトルタイトルタイトルタイトルタイトル</a></dt>
  <dd>テキストテキストテキストテキストテキスト<span><a href="#link1">テキストリンク</a></span></dd>
  </dl>
  </li>
  <li>
  <div class="icon"><a href="#url2"><img src="/img/gazou.jpg"></a></div><dl>
  <dt><a href="#title2">タイトルタイトルタイトルタイトルタイトルタイトル</a></dt>
  <dd>テキストテキストテキストテキストテキスト<span><a href="#link2">テキストリンク</a></span></dd>
  </dl>
  </li>
  <li>
  <div class="icon"><a href="#url3"><img src="/img/gazou.jpg"></a></div><dl>
  <dt><a href="#title3">タイトルタイトルタイトルタイトルタイトルタイトル</a></dt>
  <dd>テキストテキストテキストテキストテキスト<span><a href="#link3">テキストリンク</a></span></dd>
  </dl>
  </li>
  <li>
  <div class="icon"><a href="#url4"><img src="/img/gazou.jpg"></a></div><dl>
  <dt><a href="#title4">タイトルタイトルタイトルタイトルタイトルタイトル</a></dt>
  <dd>テキストテキストテキストテキストテキスト<span><a href="#link4">テキストリンク</a></span></dd>
  </dl>
  </li>
  <li>
  <div class="icon"><a href="#url5"><img src="/img/gazou.jpg"></a></div><dl>
  <dt><a href="#title5">タイトルタイトルタイトルタイトルタイトルタイトル</a></dt>
  <dd>テキストテキストテキストテキストテキスト<span><a href="#link5">テキストリンク</a></span></dd>
  </dl>
  </li>
</ul>
  </div>

jqueryでは以下のように書きます。これでリンク発動します。簡単ですね。 これならどこの子要素でも取得できます。

 <script>
	$("#test > ul > li").on("click",function(){
			window.location = $(this).find("dt > a").attr("href");
        return false;
    });
    </script>

⇒デモを見てみる

参考になれば幸いです。


∞Tadashi Suyama∞

js click web css
  • このエントリーをはてなブックマークに追加
  • follow us in feedly

サイト内検索

最近の投稿

アイキャッチ
そろそろvuejs始める

最近はjQueryよりvueで書いた方が楽ではないかと思い学習中です。 そもそもVuejsはドキュメントが日本語対応なので試しやすいし情報も豊富なので学習しやすいです。 3大フレームワークと呼...

02 May 2021

アイキャッチ
追い風CSS(tailwindcss)が結局楽かも

最初にtailwindcssのv1が出た頃はまだbootstrapで良いかな。 htmlに入れるクラスタグが多過ぎと思っていました。あまり良い印象はなかったです。 時は過ぎいろいろと触っていると...

29 Apr 2021

アイキャッチ
エラー処理について

COJPドメンを取得する際に「登記年月日」という項目があります。 その項目通り登記した年月日を入れる訳ですが、なぜかエラーが出ました。 半角英数字にして下さいというよくあるエラーです。当然半角英...

24 Jan 2021

アイキャッチ
javascriptのundefinedの判定

jqueryで高さの数値をとって足し算をしていたらエラーも出ずに動かないということになったので調べてみました。 ワードプレスで管理画面のアドミンバーが一度ログインするとフロント画面でも表示される...

17 Jan 2021

アイキャッチ
Webpack5にアップデートしてエラーの対処方法2つ

webpack4(4.41.5)から webpack5(5.12.1)にあげました。 特に難しい設定は行っておらず主にscssと共通モジュールの設定だけで使っているのですがそれでもエラーが出たの...

09 Jan 2021

著者

ウェブエンジニアの須山のブログです。

WEBに関することや個人的に関心のあることについて書きます。主に技術系ブログです。

タグクラウド

js click web css
フッターイメージ