ホームページ  >  記事  >  ウェブフロントエンド  >  onmousedown、onmouseup、onclick が同じラベル ノードに同時に適用される場合の JavaScript Element_javascript ヒント

onmousedown、onmouseup、onclick が同じラベル ノードに同時に適用される場合の JavaScript Element_javascript ヒント

WBOY
WBOYオリジナル
2016-05-16 18:37:191242ブラウズ

JavaScript では、mousedown、mouseup、click の実行順序は左から右であるため、通常の状況では、mousedown イベントがアクティブになると、ポップが発生するため、mousedown イベントにバインドされていないメソッドはアラートのようなメソッドを使用します。 -up オブジェクト ボックスがブロックされる イベント配信がないと (つまり、後続の呼び出しイベントが失われます)、後者の 2 つのイベントは確実にアクティブ化されます。通常、ラベルには 1 つのクリック イベントのみをバインドします。実際、クリック イベントをトリガーすると、mousedown、mouseup、その他のイベントも呼び出されます。しかし、それらの呼び出しサイクルは非常に短く、これら 2 つのイベントをバインドする関連関数を作成していないため、Won になります。気づいてないよ。ここで、これらのイベントをラベルに同時に登録し、指定されたハンドラー関数をバインドするとします。実際の開発では、以下に説明する問題が発生します。
まず簡単な例でテストして、私が述べた問題を発見して直感的な印象を持ってから、私の解決策を見てください。

コードをコピーします コードは次のとおりです:

< ;/div>

関連トピック: 一般的に使用されるクリック イベントはマウスダウンとマウスアップの後に実行されるため、クリックの代わりにマウスアップを使用できます (上記の例ではこのように使用されています)。この時点では、クリックを登録する必要はありません。要素上のイベント。もちろん、可能であれば、クリックの代わりにマウスダウンを直接使用することもでき、この記述方法は Gmail などの一部の Google 製品で見られます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。