Вызов автозаполнения YUI3 для события фокуса

Я пытаюсь вызвать focus() для элемента управления автозаполнения YUI3, но ничего не происходит.

Код:

var ac = new Y.AutoComplete({ inputNode: '#ac-input' });
ac.focus(); //doesn't do anything
ac.fire('focus'); //neither this
ac.simulate("focus"); //no success either, yes I did include 'node-event-simulate'
ac.invoke("focus"); //no success either

заменил «фокус» на «щелчок», но ничего.

Пробовал использовать focusmanager, но пока безуспешно.

Как сфокусировать поле запроса автозаполнения?


person eyalfein    schedule 28.01.2013    source источник


Ответы (1)


Я думаю, что ac - это не тот узел, о котором вы думаете.

Попробуйте вызвать метод фокуса на входном узле.

var inputNode = Y.one('#ac-input'),
    ac = new Y.AutoComplete({ inputNode: inputNode });

inputNode.focus();
person ludo    schedule 29.01.2013
comment
Спасибо, @ludo, я сделал это безуспешно, ничего не происходит, когда focus(). Однако я попытался зафиксировать событие фокуса элемента текстового поля автозаполнения, что-то вроде Y.on('focus', function(){ alert(...);}), и он зафиксировал событие! Это означает, что событие сработало и было захвачено соответствующим элементом, но на экране ничего не происходит (я ожидаю увидеть то, что я печатаю в текстовом поле). Есть идеи? - person eyalfein; 31.01.2013
comment
Какой элемент является узлом #ac-input? Это ввод? jsbin.com/epudag/1/edit работает для меня. - person ludo; 31.01.2013