ホームページ > ウェブフロントエンド > jsチュートリアル > ページ読み込み時の謎の Onclick 実行を防ぐには?

ページ読み込み時の謎の Onclick 実行を防ぐには?

Barbara Streisand
リリース: 2024-10-22 07:12:03
オリジナル
854 人が閲覧しました

How to Prevent Mysterious Onclick Execution Upon Page Load?

ページの読み込み時に不思議なことにトリガーされる Javascript onclick 関数

onclick イベント リスナーは、関連する要素のクリック時にのみ実行される必要があります。ただし、特定のシナリオでは、ページの読み込み直後に関数が呼び出され、クリック イベントが無効になっていることが観察されます。

この問題は、一般に、onclick 属性を setAttribute('onclick', SecondFunction) として割り当てるときに発生します。 ()) setAttribute('onclick', SecondFunction) の代わりに。前者は関数を直接実行し、後者は関数をイベント ハンドラーとして登録します。

正しい使用法:

<code class="javascript">// Create a new element with an onclick event listener
var sentNode = document.createElement('a');
sentNode.setAttribute('href', "#");
sentNode.setAttribute('onclick', secondFunction);</code>
ログイン後にコピー

誤った使用法:

<code class="javascript">// Immediately executes the function upon loading the page
sentNode.setAttribute('onclick', secondFunction());</code>
ログイン後にコピー

重要な違いSecondFunction に追加された括弧内にあります。これらを省略すると、コードはイベント ハンドラーを関数への参照として定義し、要素がクリックされたときにイベント ハンドラーを実行できるようにします。逆に、括弧を含めると、関数の実行がすぐにトリガーされます。

この正しい使用法に従うことで、onclick イベントは意図したとおりに機能し、関連付けられた要素のクリックが呼び出されるのを待ちます。

以上がページ読み込み時の謎の Onclick 実行を防ぐには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート