勉強したことのメモ

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

  関連記事

Leafletでマップ上に通知(トースト)機能を追加する方法(Leaflet.Notifications)
Leafletでマップ上に通知(トースト)機能を追加する方法(Leaflet.Notifications)

Leafletでマーカー内のボタンクリック時等、ユーザーが何らかのアクションを行 ...

JavaScriptで指定したURLの最終パス名(ディレクトリ)を取得する方法
JavaScriptで指定したURLの最終パス名(ディレクトリ)を取得する方法

JavaScriptで「https://taitan916.info/blog/ ...

JavaScriptにて「QRCode.js」ライブラリを利用してQRコードを生成する方法
JavaScriptにて「QRCode.js」ライブラリを利用してQRコードを生成する方法

PHPが使えない環境で動的にQRコードを生成したかった。以前にメモしたAPI等の ...

Leafletで表示したマップにジェスチャーハンドリングを追加する方法(Leaflet.GestureHandling)
Leafletで表示したマップにジェスチャーハンドリングを追加する方法(Leaflet.GestureHandling)

GoogleMapをズームする際にPCだと「Ctrl+スクロール」、スマホだと「 ...

JavaScriptで数値のカンマ区切り化とカンマ区切りの解除
JavaScriptで数値のカンマ区切り化とカンマ区切りの解除

JavaScriptで数値を3桁ごとにカンマ区切り化したい。また、それとは逆にカ ...