Вводимый текст не будет автофокусироваться после динамического создания в FF

Я нажимаю диапазон, текст ввода создается с атрибутом autofocus (я также пробовал с autofocus="focus").

в Chrome, Opera, Safari и даже IE вводимый текст использует автофокус, но только Firefox не использует его (я тестировал на FF V 16 и 18)

В любом случае мне пришлось сделать запасной вариант для других браузеров, поэтому я добавил фокус через jQuery, но, тем не менее, FF не примет его после создания ввода.

Вот как я добавил его через jQuery:

<span onclick=" createdTextInput('idOffline','edit'); 
$(function(){ $('#idOfCreatedInput').focus(); });" title=""> clickMe </span>

Я вызываю focus() для нового созданного ввода после его создания.

Я даже пытался использовать такие селекторы, как:

 $(function() {$('[autofocus]').focus()});

а также

 $('input[type="text"]').focus();

person Alucard    schedule 27.12.2012    source источник


Ответы (2)


Попробуй это:

$('#idOfCreatedInput').trigger('focus')
person Alessandro Minoccheri    schedule 27.12.2012
comment
Я не знаком со свойством, но мне кажется, что ваш код предназначен для выполнения чего-то, когда мой элемент получает фокус, но то, что я пытаюсь сделать, это получить фокус на вновь созданном элементе - person Alucard; 27.12.2012
comment
отредактируйте мой ответ, теперь, когда вы его создаете, если вы вызываете его, сфокусируйте его - person Alessandro Minoccheri; 27.12.2012
comment
Спасибо за ваш ответ, но ничего не изменилось, он по-прежнему отказывается фокусироваться ... я делаю что-то не так ...? - person Alucard; 27.12.2012
comment
вы можете сделать jsfiddle? jsfiddle.net - person Alessandro Minoccheri; 27.12.2012

Я исправил это с помощью setTimeout() и селектора на autofocus, так как с входным идентификатором это не сработало..

setTimeout(function() {
  $("[autofocus]").focus(); 
}, 0);
person Alucard    schedule 28.12.2012