2
我有問題,在HTML5實現一個模態對話框:https://github.com/Semantic-Org/Semantic-UI/issues/733如何防止輸入字段獲得鍵盤焦點?
我想對所有背景輸入字段編程方式禁用焦點,而模態對話框可見。 有沒有辦法以編程方式防止HTML輸入字段獲得鍵盤焦點?
我有問題,在HTML5實現一個模態對話框:https://github.com/Semantic-Org/Semantic-UI/issues/733如何防止輸入字段獲得鍵盤焦點?
我想對所有背景輸入字段編程方式禁用焦點,而模態對話框可見。 有沒有辦法以編程方式防止HTML輸入字段獲得鍵盤焦點?
,如果你保持一個表單內的所有輸入字段嘗試這種開放模式對話框
var form = document.getElementById("your_form_id");
var elements = form.elements;
for (var i = 0, len = elements.length; i < len; ++i) {
elements[i].readOnly = true;
}
我已經找到了解決辦法:
function startFocusJail (focusRootElement) {
$(document).off("focusin.focusJail");
$(document).on("focusin.focusJail", function(event) {
if (event.target !== focusRootElement && !$.contains(focusRootElement, event.target)) {
focusRootElement.focus();
}
});
}
function stopFocusJail() {
$(document).off("focusin.focusJail");
}
如果DIV
被作爲focusRootElement
參數傳遞,它必須有tabindex="-1"
。
將它們設置爲'readonly',授予它對checkbox/radio等不起作用.' disabled'將適用於所有人,但如果元素在表單中,則不會張貼值 – CodingIntrigue
使用jQuery,您可以使用'blur()'函數: http://www.w3schools.com/jquery/event_blur.asp eg '$('input')。blur()' –
您是否在表單中維護所有輸入字段? – chandu