как сделать див unfocusable?
Я столкнулся с проблемой рендеринга HTML.
в dir="rtl" документ IE7, когда JavaScript пытается установить фокус на элемент DIV (с oElement.Focus () метод), рендеринг превращается в беспорядок. Контекст очень сложно, поэтому я предполагаю, что самый простой исправить это, чтобы сделать див unfocusable?
есть ли способ сделать DIV не сфокусированным?
4 ответов
на <div>
не должен быть способен получать фокус, если вы добавили свойство tabindex.
Если вы добавили tabIndex
, вы должны удалить его с помощью
document.getElementById("yourElement").removeAttribute("tabIndex");
дополнительно, Если вы хотите сделать фокусируемый элемент (сформировать входные элементы и т. д.) как несфокусируемые. Вы можете установить :
tabIndex = "-1"
document.getElementById("yourElement").setAttribute("tabIndex", "-1");
Я не уверен, что вы можете сделать элемент "un-focusable", но вы можете, конечно, un-focus его в определенный момент времени, используя его blur
способ:
document.getElementById("myElement").blur();
EDIT:
Я думаю, вы можете сделать элемент "нецелесообразным", расфокусировав его каждый раз, когда он фокусируется. Вы можете сделать это через:
document.getElementById("myElement").onfocus = function() {
this.blur();
};
...или (используя встроенный Javascript в вашем HTML):
<div onfocus="this.blur();"></div>
Стив
ниже есть какой-то способ сделать див unfocusable с помощью jQuery.
// Set the tabindex atribute to -1.
1)$("divid").attr('tabindex','-1');
// Remove the tabindex atribute if exists.
2) $("divid").removeAttr('tabindex');
// This is third way.
3) $("divid").blur();