マウスを動かしたときにDIVが消えるように手ぶれ補正を使用する div タグ自体は onblur イベントをサポートしていないため、ボタンがクリックされたときにポップアップする div の場合、div がフォーカスを失ったときに消えるようにする必要がありますが、これは onblur を使用して実現することはできません。 ただし、onmouseout とイベントを使用すると、フォーカスを失ったときに DIV が消えるようにすることができます。 onmouseout を直接使用して消えることを実現すると、問題が発生する可能性があります。ボタンの位置とポップアップ div の位置が重ならない場合は、マウスが移動するとすぐに onmouseout イベントがトリガーされ、役に立ちません。 アンチシェイク、オンマウスアウト、オンマウスオーバーを組み合わせて使用することで、優れたぼかしイベントエクスペリエンスを実現します。 /** *マウスがdivイベント上を移動*/ 関数moveOverEvent(ele,outTimer) { overTimer を null にします。 関数()を返す{ clearTimeout(outTimer); //div が消えず、別の div が移動してきたら、最後に移動したイベントをクリアします。clearTimeout(overTimer); //アンチシェイク overTimer = setTimeout(()=>{ ele.style.display = "ブロック"; },500); } } /** *マウスアウト*/ 関数moveOutEvent(ele,outTimer) { 関数()を返す{ clearTimeout(outTimer); // 手ぶれ防止 outTimer = setTimeout(()=>{ // 移動後 500 ミリ秒待ってからこの div を消す ele.style.display = "なし"; },500); } } その後、div に tabindex 属性を追加することで、blur イベントを実装できることを偶然発見したので、上記のコードは無駄に書かれていたのかもしれません。 (追記: 上記の体験は、誤タッチを大幅に減らし、より良いものになったと思います) //tabindex を設定すると、要素はデフォルトで点線で表示されます。これは、ouline=0 を設定することで削除できます (IE では、hidefocus="true" を設定します)。 <div tabindex="0" アウトライン=0" 非表示フォーカス="true"></div> 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 |
<<: Baidu サイト検索が https をサポートしていない問題の解決策 (テスト済み)
擬似配列と配列JavaScript では、5 つのプリミティブ データ型を除き、関数を含め、その他す...
<a href="" onclick=""> を...
この記事は主にMysqlの複数データベースのバックアップのコード例を紹介します。この記事ではサンプル...
目次序文必要成し遂げる最初のレンダリングメニュー項目をクリックしますスタイルの区別デフォルトのハイラ...
この記事では、いくつかの基本的なページ要素の実装方法をまとめており、後で更新される予定です。まず、私...
この記事では、Jingdongの詳細ページの画像の拡大を実現するためのjsの具体的なコードを紹介しま...
この記事では、主に、上下固定と中スライドレイアウトを実現するためのフレックスレイアウトのレイアウト方...
この記事では、スライドタブを実装するためのjQueryの具体的なコードを参考までに紹介します。具体的...
目次複数テーブル結合の基本構文クロス結合と直積現象クロスコネクトデカルト積現象内部結合外部結合左外部...
複数の条件を持つ MySQL クエリ環境: MySQL 5.7 where ステートメントに複数の ...
この記事の例では、Webメッセージボードを実装するためのjsの具体的なコードを参考までに共有していま...
mptemp は安全な方法で一時ファイルまたはディレクトリを作成します。このコマンドの適用範囲: R...
類似の構造:コードをコピーコードは次のとおりです。 <div></div>&...
目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...
問題の説明:エラーメッセージ:原因: com.mysql.jdbc.PacketTooBigExce...