如何在停用的輸入欄位上擷取事件
停用的輸入欄位通常不會處理事件偵聽器。如果您需要根據使用者與此類輸入的互動啟用功能,這可能是一個挑戰。
解決方法:
要解決此問題,您可以設定事件處理程序在容器元素上,因為瀏覽器經常將源自停用元素的事件沿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中文網其他相關文章!