首頁 > web前端 > js教程 > 如何擷取禁用輸入欄位上的事件?

如何擷取禁用輸入欄位上的事件?

Patricia Arquette
發布: 2024-12-16 20:15:16
原創
916 人瀏覽過

How Can I Capture Events on Disabled Input Fields?

如何在停用的輸入欄位上擷取事件

停用的輸入欄位通常不會處理事件偵聽器。如果您需要根據使用者與此類輸入的互動啟用功能,這可能是一個挑戰。

解決方法:

要解決此問題,您可以設定事件處理程序在容器元素上,因為瀏覽器經常將源自停用元素的事件沿DOM樹傳播。但是,某些瀏覽器(例如​​ Firefox)不會以這種方式運作。

跨瀏覽器解決方案:

為了實現完整的跨瀏覽器相容性,您可以放置​​一個透明的元素,例如

<div>,位於禁用的輸入欄位前面。此元素將捕獲單擊事件:
<div>
登入後複製
$("div > div").click(function (evt) {
    $(this).hide().prev("input[disabled]").prop("disabled", false).focus();
});
登入後複製

使用此解決方法,透明疊加層上的單擊事件將啟用禁用的輸入字段並為其提供焦點。

示範:

您可以在以下位置查看此解決方案的實際效果:http://jsfiddle.net/RXqAm/170/(使用jQuery 1.7 和prop 而不是attr)。

以上是如何擷取禁用輸入欄位上的事件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板