勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

aタグにてhref属性の「javascript:void(0);」の代替手段について

  JavaScript

aタグにJavaScriptやjQueryでイベントを割り当てたい場合、href属性に「javascript:void(0);」を指定していたが、ソースコードの見た目やリンク部分のマウスオーバー時の表示内容が微妙という点で他の方法に切り替えたい。以下に代替手段をメモ。

 

代替手段

href属性を付けない

こちらが簡単に対応できそうだけどCSSがうまく当たらない場合があるらしい

<a>href無し</a>

return false;を指定する

<a href="./" class="dummy_link">href有り</a>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script>
$(function(){
    $(`.dummy_link`).on(`click`, function(){
        return false;
    });
});

 

所感

buttonタグやinput type="button"に変更できたらいいんだけど、コーディングデータからタグ構成を勝手に変えるというのは色々難しいケースが多い。そのような場合は上記の代替手段で対応したいところ。

 - JavaScript

  関連記事

iPhoneにホーム画面登録を促すダイアログを表示
iPhoneにホーム画面登録を促すダイアログを表示

スマホ用のサイトでお気に入り登録を促すというのは以前に無理という結論が出たけれど ...

jQueryでHTMLの特定要素をループ時に逆順で処理する方法
jQueryでHTMLの特定要素をループ時に逆順で処理する方法

jQueryでリスト(li)タグ等の特定要素をeach()でループ処理する場合、 ...

バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法
バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法

サイト内に日時ピッカーを実装する場合、jQueryの「DateTimePicke ...

Lightboxで画像拡大時に閉じるボタンの位置を右上に変更
Lightboxで画像拡大時に閉じるボタンの位置を右上に変更

Lightbox(バージョン2.7.1)で画像拡大時に閉じるボタンの位置を右下か ...

jQueryでループを抜けようと(breakしようと)するとエラーになる際の対応方法
jQueryでループを抜けようと(breakしようと)するとエラーになる際の対応方法

jQueryでループを抜けようと(breakしようと)すると「Uncaught ...