a href=# と a href=javascript:void(0) の違いの詳細な説明

a href=# と a href=javascript:void(0) の違いの詳細な説明
a href="#"> リンクをクリックすると、ページがページ上部までスクロールします。# デフォルトのアンカーポイントは #TOP です。

<a href="javascript:void(0)" onClick="window.open()"> リンクをクリックしてもページは移動せず、リンクのみが開きます

<a href="#" onclick="javascript:return false;"> 上記と同じ効果ですが、ブラウザによって異なる場合があります。

リンクをクリックした後にページを一番上までスクロールしたくない場合は、href="#" の代わりに href="javascript:void(0)" を使用します。return false でも同様の効果が得られます。

href="#" と href="javascript:void(0)" の違いの詳しい説明

「#」には位置情報が含まれます。デフォルトのアンカーは #top で、これは Web ページの上部です。JavaScript:void(0) はデッドリンクのみを示します。ページが非常に長く、参照リンクが明らかに # であるにもかかわらず、ページの先頭にジャンプするのはこのためです。JavaScript:void(0) はそうではありません。したがって、スクリプトを呼び出すときは void(0) を使用するのが最適です。
または <クリック時に入力>
<div onclick> など

リンクを新しいウィンドウで開くいくつかの方法

1.ウィンドウを開きます('url')
2. カスタム関数を使用する

コードをコピー
コードは次のとおりです。

<スクリプト>
関数 openWin(タグ,obj)
{
obj.target="_blank";
obj.href = "Web/Substation/Substation.aspx?stationno="+タグ;
obj.click();
}
</スクリプト>
<a href="javascript:void(0)" onclick="openWin(3,this)">LINK_TEST</a>

ウィンドウの場所.href=""
---------------------------------------------------------------------------------
# の場合は先頭にジャンプします。私が収集した解決策をいくつか示します。
1: <a href="####"></a>
2: <a href="javascript:void(0)"></a>
3: <a href="javascript:void(null)"></a>
4: <a href="#" onclick="falseを返す"></a>
5: <span style="cursor:hand"></span> (FFでは表示されないようです)
---------------------------------------------------------------------------------
JavaScript は慎重に使用してください: void(0)

今日 CGI をデバッグしていたところ、CGI プログラムは明らかに実行され、最終結果も正しかったのですが、ページが更新されませんでした。 FireFox2.0 でテストすると結果は正常ですが、IE6 では更新されません。よく調べてみると、cgi ページ リンクは <a href="javaScript:void(0)" OnClick="XXX_Func();" ….> 単なるサンプル </a> であり、問​​題はこの void(0) にあることがわかりました。まず、JavaScript における void(0) の意味を見てみましょう。
JavaScript では、void は式は評価されるが値は返されないことを指定する演算子です。

void 演算子の使用形式は次のとおりです。

1. javascript:void (式_r_r)
2. javascript:void 式_r_r

expression_r_r は評価される JavaScript 標準式です。式を囲む括弧はオプションですが、含めることをお勧めします。 void 演算子を使用してハイパーリンクを指定できます。式は評価されますが、現在のドキュメントには何も読み込まれません。次のコードは、ユーザーがクリックしても何も起こらないハイパーリンクを作成します。ユーザーがリンクをクリックすると、void(0) は 0 と評価されますが、JavaScript には影響しません。
<a href="javascript:void(0)">ここをクリックしても何も起こりません</a>
つまり、何らかの処理は行いたいがページ全体を更新したくない場合はvoid(0)を使用できますが、ページを更新する必要がある場合は注意が必要です。
実際、 <a href="javascript:void(document.form.submit())"> を次のように使用することができ、この文は送信操作を実行します。では、どのような状況で void(0) がより頻繁に使用されるのでしょうか? 更新なしですか? もちろん、それは Ajax です。Ajax ウェブページを見ると、一般的に void(0) が多数見られます :)。そのため、void(0) を使用する前に、ページ全体を更新する必要があるかどうかを検討するのが最善です。

JavaScript を使用する場合、通常は次のようなものを使用します。

<a href="#" onclick="javascript:method">送信</a>
このメソッドは疑似リンクを通じて JavaScript メソッドを呼び出します。このメソッドには次の問題があります:
リンクをクリックしてもページはジャンプしませんが、スクロール バーは上にスクロールします。解決策は false を返すことです。

以下のように表示されます。

<a href="#" onclick="javascript:method;return false;">送信</a>

### も使用できます

a href="javascript:void(0)" onclick="javascript:method;return false;"送信
javascript:void(0) はジャンプしません :)

もう一つの方法は#this

a href="#this" onclick="javascript:method"

<<:  MySQLの主キーとユニークキーの重複挿入の解決策の詳細な説明

>>:  Photoshop を使って Web ワイヤーフレームを作成する方法

推薦する

JavaScript における BOM と DOM の詳細な説明

目次BOM (ブラウザ オブジェクト モデル) 1. ウィンドウブラウザのウィンドウサイズを取得する...

JavaScriptアップロードファイル制限パラメータケースの詳細な説明

プロジェクトシナリオ: 1. アップロードファイルの制限関数: 1. フロントエンド操作による異常な...

Yahooのフロントエンド最適化に関する35のルールについての簡単な説明

概要: 仕事でも面接でも、Web フロントエンドのパフォーマンスを最適化することは非常に重要です。で...

nginx の 2 つのモジュールの proxy_pass の違い

1. 1.ngx_stream_proxy_moduleモジュールのproxy_passディレクティ...

LinuxはMySQLデータベースの自動バックアップとスケジュールバックアップを毎日実装しています

概要バックアップは災害復旧の基礎であり、システム操作エラーやシステム障害によるデータ損失を防ぐために...

Typescript+React でモバイルと PC でシンプルなドラッグ アンド ドロップ効果を実現

この記事では、モバイルとPCで簡単なドラッグアンドドロップ効果を実現するためのTypescript ...

httpsウェブサイトにリファラーhttpsとhttpジャンプリファラーを送信させる方法

この記事では、HTTP プロトコルのリファラーのメタデータ パラメータの提案について説明します。この...

Dockerコマンドの学習を1つの記事にまとめる

目次導入ミラーリポジトリログイン引く押す検索ローカル画像管理画像rmiタグ建てる歴史保存負荷輸入コン...

WindowsシステムでMySQLデータベースを完全にアンインストールして、MySQLを再インストールします

1. コントロールパネルで、MySQLのすべてのコンポーネントをアンインストールします。コントロール...

MySQL 5.7 でデータベースのデータ保存場所を変更する方法

MySQL データベースに保存されるデータが徐々に増加すると、元のストレージ領域がいっぱいになり、M...

MySQL シリーズ 6 のユーザーと認証

目次チュートリアルシリーズ1. ユーザー管理1. ユーザーアカウント2. アカウントの追加と削除3....

SpringBoot + Vue プロジェクトを Linux サーバーにデプロイするための詳細なチュートリアル

序文SpringBoot + Vueのフロントエンドとバックエンドを分離したプロジェクトをどのように...

Dockerコンテナが外部ネットワークにpingできない問題を解決する

今日、docker で redis 環境を構築していたところ、yum がリソースを取得できず、インタ...

Mysqlの同時パラメータ調整の詳細な説明

目次クエリキャッシュの最適化概要クエリプロセスクエリキャッシュ構成クエリキャッシュの無効化メモリ管理...

MySQL ログイン警告問題の解決策

1. はじめにMySQL にログインすると、次のような警告が表示されることがよくあります。警告: コ...