Страницы: 1
Может кто-то сталкивался? Можно ли, в принципе, сделать так, что бы программа на JS вводила текст в поле на котором стоит фокус ввода? Проблема видится в том, что при клике на кнопку фокус передастся ей. Но может кто-то сталкивался? Есть ли решение у этой задачи? Скрипт будет висеть в расширении.
Отсутствует
Я так понимаю что простой ответ «Можно» тебе не подойдёт? Попробуй посмотреть как это организовано в расширении Nightly Tester Tools... Там есть кнопка для Панели навигации «Вставить ID сборки». Чем-то напоминает твоё желание...
Благодарю алфавит за любезно предоставленные буквы.
Отсутствует
Что-то вроде этого:
var bluredEl = null; function blurHandler (event) { if (event. originalTarget. nodeName == "html:input") // или "textbox" bluredEl = event. originalTarget; } window. addEventListener ("blur", blurHandler, true);
+
<button oncommand="bluredEl.value='text';"/>
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Что-то вроде этого:
Выделить кодКод:
var bluredEl = null; function blurHandler (event) { if (event. originalTarget. nodeName == "html:input") // или "textbox" bluredEl = event. originalTarget; } window. addEventListener ("blur", blurHandler, true);+
<button oncommand="bluredEl.value='text';"/>
Не. Ваще ни разу. Только в GET дату добавляет txt= и перезагружает страницу
Отсутствует
Оказываеца текстареа не теряет фокус при передаче вокуса расширению. Так что хендлер надо перевесить на событие получения фокуса ввода. Это, ведь, onfocus? Или в данном контексте надо писать просто focus?
Отсутствует
может быть, стоит обратить внимание на эту строку:
?
Вместо originalTarget можно попробовать target, а вместо "html:input" - "html:textarea"...
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
может быть, стоит обратить внимание на эту строку:
?
Вместо originalTarget можно попробовать target, а вместо "html:input" - "html:textarea"...
Спасибо. Я уже обратил на них внимание и переписал. И всё работает. Но нужно перевесить обработчик с потери фокуса на его получение.
Объясняю: я пишу расширение, которое поможет мне писать комменты и посты в http://livejournal.com
Там есть фишка для зарегестрированных юзеров. Когда пишешь комментарий к чужой записи, то форма для ввода коментария строится динамически. Узнать её id мне не удалось. Вот я и задумался над универсализацией.
Так вот чтоб всё работало надо сначала поставить фокус на текстарею для добавления коммента, а потом убрать. Иначе ничего не работает. Я пришёл к выводу, что событие потери фокуса не происходит когда после того, как я кликаю на кнопке из своего тулбара.
Замена blur на focus почему-то не помогла.
чем originalTarget отличается от target?
Отсутствует
Может следующий код из nightly tester поможет ?
var element = document.commandDispatcher.focusedElement; if (element) { var type = element.localName.toLowerCase(); if ((type=="input")||(type=="textarea")) { element. value = "...";
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Страницы: 1