Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Имитация нажатия на клавишу (https://javascript.ru/forum/misc/29789-imitaciya-nazhatiya-na-klavishu.html)

9xakep 11.07.2012 18:57

bes,
O_o...ась?
Мне нужно было именно нажатие на клавишу, просто было написано по-дурацки, и принажатии на клавишу вызывалась ф-ия и происходила рекусрия. Что бы ее не произошло, нужно было сразу же сэмулировать нажатие на клавишу (не будешь же юзеру каждый раз говорить, сейчас нажми на любую кнопку) Но я уже переделал, и обошолся без этого :)
Dim@, отлично, а теперь найди: jQuery.expando,jQuery.extend, и trigger ;)
Цитата:

Сообщение от vadim5june
Я всегда считал что симмитировть нажатие клавиши нельзя и сейчас так думаю
Они наверно просто выполнили функцию

Что значит выполнили ф-ию?

vadim5june 11.07.2012 19:12

Цитата:

Сообщение от 9xakep (Сообщение 188126)
Что значит выполнили ф-ию?

то есть выполнили функцию из обработчика
Что такое иммитация нажатия на клавишу?
По моему это так должно действовать-если у нас курсор на элементе input
и у input focus то при иммитации нажатия клавиши там должна буква появится-точно так как будто юзер нажал-но в Вашем примере не появится только обработчик сработает

Раед 11.07.2012 19:40

Цитата:

Сообщение от 9xakep
а теперь найди: jQuery.expando,jQuery.extend, и trigger

Блокнот->Поиск
Не?

9xakep 11.07.2012 20:05

Раед,
ctrl+F *trololo* в любом браузере.
Просто в jQuery.expand, есть еще 100500 ф-ий, итд. Так что легче переделать код.

Раед 11.07.2012 20:51

Цитата:

Сообщение от 9xakep
есть еще 100500 ф-ий...

... с непонятным назначением - поэтому я и не люблю копаться в чужом коде

MDNsearch: createEvent, dispatchEvent

9xakep 11.07.2012 21:46

Раед,
уже подсказали. Только вот не догоняю: createElement("Event") - тут какой событие писать для: keyup??
<body onkeyup='a(event)'><div id='a'></div>
<script>
var evt = document.createEvent("Event")
evt.initEvent("keyup", true, true)
evt.keyCode = 13 // Enter, можно так писать?
document.dispatchEvent(evt)
function a(e) {
alert(e.keyCode)
}
</script>

Но как видишь не работает...
=====================
И попутный вопрос, event в firefox выдает undefined. Как ее там использовать, я уже за день как-то запутался, то работает, то пару строк уберу не работают.. :blink:
=================

event снова работает в firefox!!!!

Dim@ 11.07.2012 21:55

<body><div id='a'></div>
<script>
var evt = document.createEvent("Event")
evt.initEvent("keyup", true, true)
evt.keyCode = 13 // Enter, можно так писать? Да
function a(e) {
alert(e.keyCode)
}
document.onkeyup = a;//функция пр нажатии клавиши
document.dispatchEvent(evt)//срабатывание
</script>

:D :D :D работает

Dim@ 11.07.2012 21:57

9xakep,
не ставь больше на боди :lol:

9xakep 11.07.2012 22:00

Dim@,
Спасибо О_о...

Dim@ 11.07.2012 22:00

9xakep,
щас создаю свой фреймворк хочу сделать что-то наподобии Jquery.Event (как ты хочу писать на чистом и не приемлю библиотеки, но считаю что работать со своим фреймворком можно, плюс мне интересно его писать)


Часовой пояс GMT +3, время: 15:36.