ブラウザでWebサイトナビゲーションホバーポップアップを停止する方法


1

迷惑なタイプのポップアップに遭遇しましたが、それを抑制する方法がわかりません。問題は、Webサイトのナビゲーションに関連する特定のサイトのリンクであり、それらにカーソルを合わせるとアクティブになります。これはすべてのブラウザーで発生します。以前はこの動作を思い出せませんが、複数のブラウザーと複数のサイトで突然この動作に遭遇しています。

amazon.comとwalmart.comのサイトは、少なくとも2つあります。両方とも、商品ページの上部近くに、ショッピング用の「ヘルパー」リンクの列(下の写真で囲まれています)があります。これらはサイトナビゲーションメニューです。これらのリンクのいずれかをクリックすると、専用ページに移動します。

しかし、ホバー「機能」があります。これらのリンクのほとんどの上にマウスを移動すると、リンクのメニュー(「クリックオン」ページの短縮版)を含むウィンドウがポップアップします。そのウィンドウは画面の大部分を覆い、マウスがポップアップウィンドウの任意の部分の上にある限り表示されたままになります。他にも同様の「ホバーブービートラップ」がページ全体に散らばっています。

問題

問題は、ホバーの遅延がないため、これらのリンクのいずれかを通過するだけでホバーとして扱われることです。この地雷原の何かを偶然通過すると、巨大なナビゲーションメニュー(または他のコンテンツ)でページが突然見えなくなり、マウスカーソルがそのウィンドウの外に移動するまでページがブロックされ続けます。さらに悪いことに、ポップアップウィンドウのゴミに関連する新しいページに自分自身を見つけることがあります。

私のメインブラウザはFirefox(V62)ですが、Windows 7とLinuxの両方でChromiumとVivaldiを使用して、WindowsのInternet Explorerで複製しました。ダニエルBは、それをEdgeでも複製したとコメントしました。(以前は、Microsoftブラウザーの動作は異なるようでしたが、そうではないことが判明しました。)

質問:

  • 使用されるポップアップメカニズムは、以下に示すリンク例のWebページのソースコードから簡単に判断できますか?
  • FirefoxまたはChromiumベースのブラウザでこのアクションを抑制する方法はありますか?

更新

@Kinnectusは、「ポップアップ」コンテンツの表示/非表示にJavascriptが使用される可能性が高いとコメントしました。それらのページでJavascriptを無効にしました。それがメカニズムです。残念ながら、Javascriptを無効にすると、ページ上の他の重要な機能も無効になります。そのため、メカニズムは確認されていますが、Javascriptを無効にするよりも解決策が必要です。



再現方法

問題を再現することは思ったほど簡単ではないことを発見しました。Webサイトは、サイトの過去の履歴、サイトにログインしているかどうか、および製品ページへのナビゲートに使用されたルート(症状を再現する際の以前の混乱の原因)に基づいてコンテンツを調整しているように見えます。

例として各サイトに特定のリンクを提供しますが、バリエーションによって読者の回答能力が制限される場合があります。たとえば、妻のコンピューターで以下の直接リンクをテストし、さまざまなページ機能を取得してから、サイトが彼女を「記憶」していることを認識し、自動的にログインしました。ログアウトすると画面が変わりました。

ここにある製品ページwalmart.comは丸で囲まショッピングヘルパー行で、:

ここに画像の説明を入力してください

丸で囲まれたリンクの1つにカーソルを合わせるか通過する:

ここに画像の説明を入力してください

Amazon.comのショッピングヘルパーの行が丸で囲まれた製品ページは次のとおりです。

ここに画像の説明を入力してください

丸で囲まれたリンクの1つにカーソルを合わせるか通過する:

ここに画像の説明を入力してください

Amazonのすべての製品ページでは、ルートに関係なくAccount & Lists、右上のリンクにホバーアクションが表示されますが、同じメカニズムであるかどうかはわかりません。



研究

これを調べて、ナビゲーションメニューでこの問題に関するオンラインディスカッションを見つけていません(しかし、それは非常に最近のようです。 tは症状を示しますが、新しい検索で同じページにアクセスすると表示されます)。ただし、他の種類のポップアップに関連する議論があり、次のようなソリューションがあります。

  • のようなマウスの特性を変更しますMouseHoverTime。ただし、ツールチップのような合法的なホバーオプションのパフォーマンスを低下させたくありません。それが実際に解決策でMouseHoverTimeあるとしても、それはWindowsレジストリ設定であり、Linuxの同等の設定を認識していません。
  • ポップアップをブロックします。これらはサイトナビゲーションの一部であり、ブロッカーが重点を置いているものではありません。最も評価の高いポップアップと広告ブロッカーをインストールしていますが、影響はありません。

    Poper Blockerをインストールしました。これはオーバーレイもブロックできます。これらは単独では検出されず、コンテキストメニューへの移動はウィンドウ外への移動として扱われたため、ウィンドウが存在している間にPoper Blockerにチェックさせる方法はありませんでした。これはオーバーレイを完全に除外するものではありませんが、Poper Blockerがそれらをブロックすることを知っている唯一のアドオンであるため、いずれにしても、これは解決につながりません。

  • 特定のURLをブロックします。これらのポップアップはURLではありません。
  • Mozillaサポートフォーラムのこの質問はURLポップアップに関するものですが、受け入れられた回答では、Firefox V61のいくつかの変更について説明していますuserChrome.css。それが関連しているかどうかはわかりませんが、ChromiumベースのブラウザとMicrosoftのブラウザで同様の問題を説明することはできません。私もプログラマーではないので、たとえそれが解決策であったとしても、それは役に立たなかった。
  • 通過によるトリガーは、アドオンによるブラウザーの誤動作ではないことを確認しました。

製品ページに行き、リンクの上にマウスを移動しても何も起こりませんでした。
ラムハウンド

@ Ramhound、Windows 7(FirefoxとVivaldi)のいくつかのブラウザー(私が持っている唯一のバージョン)でテストし、同じことを取得しましたが、そのバーのすべてのリンクがホバーでトリガーするわけではないことがわかりました。セットアップの何かが「解決策」のように聞こえるので、システム間の違いを理解することは興味深いでしょう。
fixer1234

Edgeを使用していたことは言及しませんでしたか?しかし、私は職場でChromiumを使用しており、Amazonを見たことがありますが、あなたが説明した問題は一度もありませんでした。
ラムハウンド

2
IEでもEdgeでも、ページの動作はFirefoxとまったく同じです。Amazonのホバー効果には短い遅延(私が推測すると100〜200ミリ秒)がありますが、ウォルマートは即座に発生します。Walmartのホバー効果は壊れていますが、マウスをポップアップに移動しようとすると頻繁に消えます。//高度な広告ブロッカーを使用して、いつでもこれらのポップアップ、またはトリガー要素をブロックすることができます。
ダニエルB

1
参照している機能-マウスが定義された期間より長くホバーした場合にのみコンテンツを表示するための「遅延」を可能にする機能は、「ホバーインテント」と呼ばれます。名前はそれをすべて言います。これは、Webページソース内のJavaScriptソリューションです。ブラウザのプラグインを使用して特定のタグとサイト/ドメインをターゲットにしないと、できることはほとんどありません...ドメインのJavascriptを無効にしますか?それを行うことができるプラグインはありますか?!Ps彼らはポップアップではありません。通常は、JavaScriptを使用して表示/非表示になっている隠しHTML(既に読み込まれているか、AJAX経由)です。
Kinnectus

回答:


1

あなたが説明するのは、ウェブサイトのナビゲーション/デザインの自然なデザインであり、マウスが求めているものに単に従うブラウザです。マウスがトリガー要素を離れると、コンテンツが消えます(または非表示になります)。

ユーザーがこのアクションを意図していないときはいつでもコンテンツのフラッシュを開いたり閉じたりする-たとえば、サイトをナビゲートしたくないよりも何らかの理由で画面上でマウスを動かすだけ-解決策を促した。私が覚えている限り、それは呼ばれていますhoverIntent(デモ:https : //briancherne.github.io/jquery-hoverIntent/)。開発者が要素をターゲットにできるソースコードに含めることができるjQueryプラグイン。ターゲット要素が定義された最小時間でホバーされると、開発者が希望するホバー効果を起動します。たとえば、ナビゲーションメニューを表示します。

問題のデモンストレーションは、特にオリジナルのhoverIntentプラグインを使用していませんが、ここでデモンストレーションできます(ソース:http ://www.csslab.cl/2015/05/07/hover-intent-moderno-en-menues-dropdown/ )

問題

ここに画像の説明を入力してください

結果

ここに画像の説明を入力してください

修正する

残念ながら、ウェブサイトの機能は開発者に完全に委ねられているため、ブラウザプラグインを使用せずに目的の機能をオーバーライドすることは非常に困難です。個別のサイトのJavaScriptとCSSを選択的にオーバーライドする機能を提供するプラグインの1つは、少なくともChromeのKyle Paulsenのリソースオーバーライドhttps://chrome.google.com/webstore/detail/resource-override/ pkoacgokdfckfpndoffpifphamojphii?hl = en)。

Kyle PaulsenがYouTubeチュートリアルを提供しています。このチュートリアルでは、可能性のあるすべての機能について説明しています。非常に有望なソリューションであり、簡単に入手できるように見えますhttps : //www.youtube.com/watch?v=62QIWAP9mMM


Javascriptについてあなたは正しかったようです。これは問題の原因を特定しますが、プログラマーではないため、この提案されたソリューションを実装するのに十分な知識がありません。問題の性質を特定し、解決策に私を近づけてくれた+1。
fixer1234

最後のビデオリンクは英語のように聞こえましたが、私はそれを理解できませんでした。Google翻訳にプラグインしてみましたが、ターゲット言語が「プログラマーではありません」ではありませんでした。:-)これは、プログラミングとWebサイトのバックグラウンドを持つ人にとっては、潜在的に良いもののように見えます。
fixer1234
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.