js マウスクリックでムーブインイベントをトリガーするソリューションを学びます
マウスボタン(左または右ボタン)が押されると、マウスイベントがトリガーされます。キーボードからはトリガーできません。マウスイベントがトリガーされる順序は何ですか?詳細な例を以下に示します。
マウス イベント
9 個のマウス イベントが DOM レベル 3 イベントで定義されています。
mousedown: マウスボタン (左または右ボタン) が押されたときにトリガーされます。キーボードからはトリガーできません。
mouseup: マウスボタンが放されてポップアップするとトリガーされます。キーボードからはトリガーできません。
click: マウスの左ボタンがクリックされるか、Enterキーが押されるとトリガーされます。これはアクセシビリティを確保するために重要です。つまり、onclick イベント ハンドラーはマウスだけでなくキーボードからも実行できることになります。
dblclick: マウスの左ボタンがダブルクリックされるとトリガーされます。
mouseover: ターゲット要素の上にマウスを移動します。マウスがその子孫要素の上に移動すると発生します。
mouseout: マウスがターゲット要素の外に移動します。
mouseenter: マウスが要素の範囲内に移動するとトリガーされます。このイベントはバブルアップしません。つまり、マウスがその子孫要素の上を移動してもトリガーされません。
mouseleave: マウスが要素範囲外に移動するとトリガーされます。このイベントはバブルしません。つまり、マウスがその子孫要素に移動してもトリガーされません。
mousemove: マウスが要素内で移動すると継続的にトリガーされます。キーボードからはトリガーできません。
note:
クリック イベントは、要素上でマウスダウン イベントとマウスアップ イベントが連続してトリガーされた場合にのみトリガーされます。 dblclick イベントは、2 つのクリック イベントが続けてトリガーされた場合にのみトリガーされます。
マウスダウンまたはマウスアップのいずれかがキャンセルされた場合、クリックイベントはトリガーされません。クリック イベントが直接的または間接的にキャンセルされた場合、dblclick イベントはトリガーされません。
1. イベントトリガーの順序
例: ボタンをダブルクリックして上記でトリガーされたイベントを見てください。
<input id="btn" type="button" value="click"/><script> var btn = document.getElementById("btn"); btn.addEventListener("mousedown",function(event){ console.log("mousedown"); },false); btn.addEventListener("mouseup",function(){ console.log("mouseup"); },false); btn.addEventListener("click", function () { console.log("click"); },false); btn.addEventListener("dblclick", function () { console.log("dblclick"); },false);</script>
コードを見る
2. Mouseenter と Mouseover の違い
違い:
Mouseover イベントはバブルします。これは、マウスがその子孫要素の上を移動するとトリガーされることを意味します。
mouseenter イベントはバブルしません。つまり、マウスがその子孫要素の上を移動してもイベントは発生しません。
例:
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> #outer{ position: absolute; width: 200px; height: 200px; top:0; left: 0; bottom:0; right: 0; margin: auto; background-color: pink; } #inner{ position: absolute; width: 100px; height:100px; top:50%; left:50%; margin-left: -50px; margin-top: -50px;; background-color: orange; text-align: center; line-height: 100px; } #outer,#inner{ border-radius:50%; } </style> <script src="jquery-2.1.1.min.js"></script></head><body><body> <p id="outer"> <p id="inner"> </p> </p></body><script> var parentp = document.getElementById("outer"); parentp.addEventListener("mouseover", function () { console.log("父p的mouseover事件被触发"); },false); //parentp.addEventListener("mouseenter", function () { // console.log("父p的mouseenter事件被触发"); //},false); //parentp.addEventListener("mouseout", function () { // console.log("父p的mouseout事件被触发"); //},false); //parentp.addEventListener("mouseleave", function () { // console.log("父p的mouseleave事件被触发"); //},false);</script></body></html>
コードを見る
note:
mouseoverはmouseoutに対応し、mouseenterはmouseleaveに対応します。上記のコードのコメントを解除すると、その効果が確認できます。
jqueryのhover APIは、mouseenterとmouseleaveを組み合わせたものです。
3. マウスの左右のボタン
<script type="text/javascript">document.onmousedown=function (ev){ var oEvent = ev||event; //IE浏览器直接使用event或者window.event得到事件本身。 alert(oEvent.button);// IE下鼠标的 左键是1 , 右键是2 ff和chrome下 鼠标左键是0 右键是2};</script>
関連する推奨事項:
JavaScript イベントの学習の概要 (2) js イベント ハンドラー
JavaScript イベントの学習の概要 (4) イベントのパブリック メンバー ( プロパティ
JavaScriptイベント学習のまとめ(3) jsイベントオブジェクト
JavaScriptイベント学習のまとめ(1) イベントフロー
ビデオ: JavaScriptのマウスオーバーイベント(onmouseover) - JavaScript初心者チュートリアル
以上がjs マウスクリックでムーブインイベントをトリガーするソリューションを学びますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









JavaScript文字列置換法とFAQの詳細な説明 この記事では、javaScriptの文字列文字を置き換える2つの方法について説明します:内部JavaScriptコードとWebページの内部HTML。 JavaScriptコード内の文字列を交換します 最も直接的な方法は、置換()メソッドを使用することです。 str = str.replace( "find"、 "置換"); この方法は、最初の一致のみを置き換えます。すべての一致を置き換えるには、正規表現を使用して、グローバルフラグGを追加します。 str = str.replace(/fi

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

フロントエンドのサーマルペーパーチケット印刷のためのよくある質問とソリューションフロントエンド開発におけるチケット印刷は、一般的な要件です。しかし、多くの開発者が実装しています...

この記事では、ブラウザ開発者ツールを使用した効果的なJavaScriptデバッグについて説明し、ブレークポイントの設定、コンソールの使用、パフォーマンスの分析に焦点を当てています。

この記事では、スクリプトのパフォーマンスを大幅に向上させるための10の簡単な手順の概要を説明します。 これらの手法は簡単で、すべてのスキルレベルに適用できます。 更新の維持:NPMのようなパッケージマネージャーを使用して、Viteなどのバンドラーを使用して確認してください

Sequelizeは、約束ベースのnode.js ormです。 PostgreSQL、MySQL、MariadB、SQLite、およびMSSQLで使用できます。このチュートリアルでは、Webアプリのユーザー向けに認証を実装します。また、人気のある認証ミドルであるPassportを使用します

この記事では、jQueryライブラリを使用してシンプルな画像カルーセルを作成するように導きます。 jQuery上に構築されたBXSLiderライブラリを使用し、カルーセルをセットアップするために多くの構成オプションを提供します。 今日、絵のカルーセルはウェブサイトで必須の機能になっています - 1つの写真は千の言葉よりも優れています! 画像カルーセルを使用することを決定した後、次の質問はそれを作成する方法です。まず、高品質の高解像度の写真を収集する必要があります。 次に、HTMLとJavaScriptコードを使用して画像カルーセルを作成する必要があります。ウェブ上には、さまざまな方法でカルーセルを作成するのに役立つ多くのライブラリがあります。オープンソースBXSLiderライブラリを使用します。 BXSLiderライブラリはレスポンシブデザインをサポートしているため、このライブラリで構築されたカルーセルは任意のものに適合させることができます
