開発を行う際に、次のような状況に遭遇することがよくあります。 a.swf が Web ページに追加されます。a.swf ページと html ページの両方にスクロール バーがあります。プロジェクト マネージャーは、BT 要件を提案しました。マウスで a.swf をスクロールすると html ページはスクロールしませんが、それ以外の場合は html ページがスクロールします。 何をすべきでしょうか? 方法1 : 1. マウスが a.swf のスクロール領域に移動すると、ブラウザのマウス スクロール モニターを削除するように JS に指示します。 2. マウスが a.swf のスクロール領域から外れたとき: ブラウザのマウス スクロール リスナーを追加するように JS に指示します。 3.a.swf の wmode は「window」に設定されます。 要約: wmode を「window」に設定すると、プロジェクトの要件を満たさない可能性があり、a.swf がその下の HTML ページを覆います。さらに、マウスが a.swf のスクロール領域に移動し、Alt + Tab を押してページを切り替えると、JS にブラウザのマウス スクロール監視を追加するように通知されないため、操作後、HTML ページに戻るときにスクロール処理が行われません。 方法2 : 1. a.swf は、独自のマウス スクロール監視イベントをキャンセルし、wheelToFlash(value) など、JS が呼び出すスクロール処理インターフェイスを追加します。 2. マウスが a.swf のスクロール領域に移動したとき: JS に通知します (例: mouseIsInFlashWheelRange=true)。 3. マウスが a.swf のスクロール領域から外れたとき: JS に通知します (例: mouseIsInFlashWheelRange=false;)。 4.JSはマウススクロールイベントを監視します。イベント監視処理機能では、以下の判断を行う必要があります。 Javascript コード: コードをコピー コードは次のとおりです。マウスがフラッシュホイールの範囲内にある場合 { /**a.swf が提供するインターフェイスを呼び出して、a.swf でスクロールをシミュレートします*/ /**「flash」は HTML に埋め込まれた .swf の ID、値は HTML スクロール テーブルのスクロール値です */ document.getElementById("flashID").wheelToFlash(値); /** HTML ページ上のマウス イベントのバブルを防止します (通常は event.preventDefault())*/ イベントをデフォルトにしない(); } それ以外 { /** HTML の通常のスクロール処理を行います。何もする必要はありません*/ } 要約: 方法 1 と比較すると、wmode="window" の制限はありませんが、Alt + Tab の問題は依然として存在します。 注意:JS コードを書くときは、互換性の問題に注意する必要があります。ブラウザによってマウス イベントをリッスンし、スクロール値を取得する方法が異なります。 |
>>: Vue を通じて QR コードスキャン機能を実装する
目次CentOS7環境での設定コマンド手順1. DHCP設定ファイルを設定する2. グローバル構成を...
同僚から、LINUX サーバー上の多くのコマンドが (コマンドが見つかりません) というプロンプトで...
プラグインは Firefox ブラウザにインストールされます。 Web Developer プラグイ...
目次1. シグナルリスト1.1. リアルタイム信号と非リアルタイム信号1.2 信号ステータス1.3 ...
1. サーバーにDockerをインストールする yumでdockerをインストール設定ファイルを変更...
[概要] この記事では、自作の Docker プラットフォームをベースに完全な ELK システムを素...
目次【効果】 【実施方法】 【効果】 【実施方法】 <テンプレート> <div i...
インターネットの発達により、バスを待ったり地下鉄に乗ったりする時間など、断片的な時間を活用して、いつ...
目次スイッチも複雑なコードブロックもありませんPythonからのインスピレーション辞書を使用してスイ...
目次ダーティページ(メモリページ)ダーティページが表示されるのはなぜですか?メモリ管理メカニズムの簡...
この記事では、例を使用して、Mysql データベースの基本的な SQL ステートメントについて説明し...
Docker コンテナはさまざまな方法で管理およびデプロイできます。 Docker コマンドを直接使...
序文通常、大量のデータを扱う MySQL クエリには「ページング」戦略が採用されます。ただし、ページ...
ログインページなどのホームページを作成する場合、大きな背景画像を配置する必要があり、さまざまな画面の...
CSS は Web ページの印刷スタイルを制御します。 CSS を使用して印刷スタイルを制御します。...