勉強したことのメモ

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

  関連記事

ボタンをクリック時にVideo.jsの動画プレイヤーをモーダルウィンドウ表示させる方法
ボタンをクリック時にVideo.jsの動画プレイヤーをモーダルウィンドウ表示させる方法

ボタンやリンクをクリックした際、Video.jsの動画プレイヤーをモーダルウィン ...

JavaScriptでデバッグ時にconsole.log以外のメソッドを利用する方法
JavaScriptでデバッグ時にconsole.log以外のメソッドを利用する方法

JavaScriptでデバッグ時は基本的にconsole.logを使って配列やオ ...

画像にマウスを合わせると拡大表示させる「drift」ライブラリの利用方法
画像にマウスを合わせると拡大表示させる「drift」ライブラリの利用方法

amazon等ECサイトで商品画像にマウスを合わせると当該部分が拡大表示されると ...

横スクロール可能な要素を視覚的に分かりやすくする「ScrollHint」ライブラリの利用方法
横スクロール可能な要素を視覚的に分かりやすくする「ScrollHint」ライブラリの利用方法

横長のtableを設置し、CSSのoverflowで横スクロール可能にしてもユー ...

leaflet.jsとOSMで現在地を取得しマップ上にマーカーを表示する方法
leaflet.jsとOSMで現在地を取得しマップ上にマーカーを表示する方法

leaflet.jsとOpenStreetMapで現在位置の経度緯度を取得しマッ ...