ホームページ >ウェブフロントエンド >jsチュートリアル >Firefox などのブラウザで無効になっている入力要素でイベントをトリガーするにはどうすればよいですか?

Firefox などのブラウザで無効になっている入力要素でイベントをトリガーするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-19 08:40:16831ブラウズ

How Can I Trigger Events on Disabled Input Elements in Browsers Like Firefox?

無効な入力要素でのイベントの回避策

通常、無効な入力要素はマウス イベントをトリガーしません。ほとんどのブラウザは無効な要素から親コンテナにイベントを伝播しますが、Firefox はこの動作をサポートしていません。これにより、特定のシナリオで問題が発生する可能性があります。

問題:

無効な入力要素のイベントを処理する必要がありますが、デフォルトの動作によりこれが妨げられます。

解決策:

この問題を解決するには、イベントを傍受する手法を使用できます。無効な入力要素から無効にし、無効になっていない隣接する要素のクリックをトリガーします。

HTML と jQuery を使用した実装例を次に示します。

<div>
$("div > div").click(function (evt) {
    $(this).hide().prev("input[disabled]").prop("disabled", false).focus();
});

この例では、 div 要素は無効化された入力要素と重複します。 div をクリックすると、入力要素のクリックがトリガーされ、入力要素が有効になり、その要素にフォーカスが設定されます。

例:

このテクニックを確認するには、次の JSFiddle の例を参照してください。アクション:

https://jsfiddle.net/RXqAm/170/

以上がFirefox などのブラウザで無効になっている入力要素でイベントをトリガーするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。