jsを呼び出すいくつかの方法が整理され、使用が推奨されています

jsを呼び出すいくつかの方法が整理され、使用が推奨されています
a タグではクリック イベントがよく使用されます。

1. href="javascript:js_method();"

これは当社のプラットフォームでよく使用される方法ですが、この方法では次のようなパラメータを渡すときに問題が発生しやすくなります。さらに、javascript: プロトコルを href 属性として使用すると、window.onbeforeunload イベントが不必要にトリガーされるだけでなく、IE で gif アニメーションが再生されなくなります。 W3C標準では、href内でJavaScriptステートメントを実行することは推奨されていません。

2. href="javascript:void(0);" onclick="js_method()"

この方法は、多くのウェブサイトで最も一般的に使用されている方法であり、最も包括的な方法でもあります。onclick メソッドは js 関数の実行を担当し、void は演算子です。void(0) は undefined を返し、アドレスはジャンプしません。また、このメソッドでは、最初のメソッドのように、ブラウザのステータス バーに js メソッドが直接公開されることはありません。

3.a href="javascript:;" onclick="js_method()"

この方法は前の 2 つの方法と似ていますが、唯一の違いは空の js コードが実行されることです。

4.a href="#" onclick="js_method()"

このメソッドは、インターネット上でも非常に一般的なコードです。# はタグに組み込まれたメソッドで、top の機能を表します。したがって、この方法を使用すると、Web ページをクリックした後、ページの先頭に戻ります。

5.a href="#" onclick="js_method();return false;"

このメソッドは、クリックして js 関数を実行した後に false を返し、ページはジャンプせず、実行後もページは現在の位置のままになります。

Taobao のホームページを見ました。彼らは 2 番目の方法を使用していましたが、Alibaba のホームページでは 1 番目の方法が使用されていました。両者の違いは、href 内の各 JavaScript メソッドが try と catch で囲まれていることです。

まとめると、 js 関数を呼び出す最も適切な方法は次のとおりです。

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

href="javascript:void(0);" onclick="js_method()"
a href="javascript:;" onclick="js_method()"
a href="#" onclick="js_method();return false;"

<<:  Flinkのフォールトトレラントメカニズムに関する簡単な説明:ジョブ実行とデーモン

>>:  一般的なブラウザ互換性の問題(概要)

推薦する

HTMLの基礎: HTMLの基本構造

HTML ハイパーテキスト ドキュメントの基本構造は、ドキュメント ヘッダーとドキュメント本体の 2...

Linux の総合システム監視ツール dstat の詳細な例

オールラウンドなシステム監視ツール dstat dstat は、vmstat、iostat、nets...

ボタンをクリックして画像を切り替える JavaScript

この記事の例では、ボタンをクリックすることで画像を切り替えることを実現するJavaScriptの具体...

VirtualBox+Ubuntu16でKubernetesクラスタを構築する実装

目次Kubernetesについて基本的な環境の準備VirtualBoxをインストールするUbuntu...

未来志向の総合的なウェブデザイン:プログレッシブエンハンスメント

<br />原文: プログレッシブエンハンスメントを理解するアーロン・ガスタフソン翻訳:...

Vue での keepAlive の使用例の詳細な説明

開発においては、一覧から詳細ページにジャンプし、また詳細ページに戻る際に一覧ページの状態(スクロール...

display:olck/none を使用してメニューバーを作成する方法

display:bolck/none によるメニューバーの完成の効果 図 1:まず、完成したエフェク...

CSSでフォントアイコンを使用する方法をお教えします

まず、フォントアイコンとは何でしょうか?表面的にはアイコンですが、実際はテキストです。テキストの設定...

vue-cli 設定では Vuex の完全なプロセスレコードを使用します

目次序文インストールと使用方法モジュラー管理Vuex の状態永続性要約する序文Vue 開発では、ユー...

MySQL sql_modeの適切な設定に関する詳細な説明

MySQL sql_modeの適切な設定sql_mode は見落とされやすい変数です。デフォルト値は...

Net Core実装プロセス分析のDoc​​kerインストールと展開

1. Dockerのインストールと設定 #CentOS をインストールし、Docker パッケージを...

手書きの Vue2.0 データハイジャックの例

目次1: webpackをビルドする2. データハイジャック3: まとめ1: webpackをビルド...

Vue でスクロールバーのスタイルを変更する方法

目次まず、スクロール バーのスタイルを変更するには、疑似要素-webkit-scrollbarを使用...

MySQL テーブル構造を Excel にエクスポートする方法

要件は次のとおりですテーブル構造、フィールドコメント情報、テーブル名などをエクスポートします。これは...

docker run後にコンテナがExited (0)と表示される問題を解決する

Centos7 上で openresty 用の Dockerfile を作成し、ビルドしました。 d...