Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.11.2013, 00:17
Новичок на форуме
Отправить личное сообщение для dimann889s Посмотреть профиль Найти все сообщения от dimann889s
 
Регистрация: 10.10.2013
Сообщений: 8

програмное нажатие
есть ли в JS функция програмно нажать клавишу, не мышь , а именно клавишу, например 'A' .
Ответить с цитированием
  #2 (permalink)  
Старый 09.11.2013, 02:09
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

dimann889s, нет.
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #3 (permalink)  
Старый 09.11.2013, 07:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Да, element.dispatchEvent()
Вот только действия браузера на это событие не будет (не появится символ в поле ввода например).
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #4 (permalink)  
Старый 09.11.2013, 12:23
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

Сообщение от dimann889s
есть ли в JS функция програмно нажать клавишу, не мышь , а именно клавишу, например 'A' .
А для чего это нужно в браузере? Люди на нажатия вешают обработчики, а вы хотите скриптом эмулировать нажатие клавиши, чтоб потом его обрабатывать (внимание!) скриптом? Мне кажется что-то в этой цепочке действий лишнее.
Ответить с цитированием
  #5 (permalink)  
Старый 09.11.2013, 13:57
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Сообщение от danik.js
Да, element.dispatchEvent()
Вот только действия браузера на это событие не будет (не появится символ в поле ввода например).
__________________
а смысел тогда от этого события, почему то мне кажется ТС хотел функцию которая символы сможет вводить, или что то такое..
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #6 (permalink)  
Старый 09.11.2013, 14:12
Новичок на форуме
Отправить личное сообщение для dimann889s Посмотреть профиль Найти все сообщения от dimann889s
 
Регистрация: 10.10.2013
Сообщений: 8

пнт, да хотел программно ввести в textarea текст, через
document.getElementById('text_area_id').value = 'trololo'

при нажатии на "отправить" value возвращается в предыдущее состояние, какая то защита? (сайт https://adwords.google.com/ko/Keywor...__c=1905831611)

Незнаю как обойти эту защиту, пробовал
for(var j = 0; j < wordsArr[i].length; j++){
			setTimeout(document.getElementById('gwt-debug-keywords-text-area').value += wordsArr[i].charAt(j), 3000);
		}

где wordArr это массив из заданных слов (продуктов , услуг)
тоже не канает, решаю задачку

Цитата:
1) Зайдите на https://adwords.google.com/ko/KeywordPlanner/Home От вас может потребоваться авторизация (если вы еще не залогинены в Гугл).
============ ШАГ 1 ===================
2) Кликнете на ссылку "Найти варианты ключевых слов и групп объявлений"
3) Внесите в поле "Ваш продукт или услуга" тестовый запрос №1
4) Кликните на кнопку "Получить варианты"
5) После загрузки результатов кликните на закладке "Варианты ключевых слов" и дождитесь загрузки результатов.
============ ШАГ 2 ===================
6) Внесите в поле "Ваш продукт или услуга" другой тестовый запрос
7) Кликните на кнопку "Получить варианты"
8) Дождитесь загрузки результатов и повторите ШАГ2

От вас требуется сделать скрипт который бы проходил ШАГ1 один раз, а ШАГ2 многократно, по числу элементов массива переданного функции выполняющей ШАГ2.

Последний раз редактировалось dimann889s, 09.11.2013 в 14:15.
Ответить с цитированием
  #7 (permalink)  
Старый 09.11.2013, 16:28
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

Сообщение от dimann889s
при нажатии на "отправить" value возвращается в предыдущее состояние, какая то защита?
при чем здесь защита? Нажали на "отправить" - данные отправились, страница перезагрузилась.
wordsArr[i].length - чему равно?
setTimeout - зачем?

Это какой-то юзерскрипт планируется?
Ответить с цитированием
  #8 (permalink)  
Старый 09.11.2013, 17:00
Новичок на форуме
Отправить личное сообщение для dimann889s Посмотреть профиль Найти все сообщения от dimann889s
 
Регистрация: 10.10.2013
Сообщений: 8

BETEPAH, да, чтобы в цикле отправлялось поле textarea с со значениями из words
, например var words = ['цветы', 'машины', 'книги', 'параболические антенны' ];
страница не перезагружается при отправке, все делается через аякс (это на их части мне же надо просто получить ответ по заданным словам из массива в цикле)

setTimeout() использовал тк как вначале предполагал что так можно обойти ограничение, при установке document.getElementById('gwt-debug-keywords-text-area').value = 'какой то элемент из массива' при клике document.getElementById('gwt-debug-search-button-content').click()

document.getElementById('gwt-debug-keywords-text-area').value устанавливалось в первоначальное значение, которое я вбил руками(в первый раз надо ручками сделать шаг 1 , а то value для текстареа вообще не ставится)

Последний раз редактировалось dimann889s, 09.11.2013 в 17:06.
Ответить с цитированием
  #9 (permalink)  
Старый 10.11.2013, 12:34
Интересующийся
Отправить личное сообщение для nikolya223 Посмотреть профиль Найти все сообщения от nikolya223
 
Регистрация: 09.11.2013
Сообщений: 15

А вы как через консоль пробуете? случайно не гугл хрома....
что то мне подсказывает, что там профиксено всё ))) - попробуйте даже вручную поменять в textarea внутреннюю часть, через инструменты разработчика - ноль эффекта

попробуйте через оперу
Ещё лучше - для таких целей (если это не против правил, а для упрощения своей работы) лучше написать какого нибудь макросного бота или есть хорошие программы с умными макросами - для которых это раз плюнуть) но моё мнение - с гуглом так шутить лучше не надо
Ответить с цитированием
  #10 (permalink)  
Старый 10.11.2013, 13:47
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от nikolya223
попробуйте даже вручную поменять в textarea внутреннюю часть, через инструменты разработчика - ноль эффекта
То есть изменить innerHTML? Так от этого не должно быть эффекта. innerHTML для textarea задает только начальное значение. Далее значение хранится в свойстве (не атрибуте!!) .value , вот его и нужно менять.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Програмное нажатие на кнопку djonA Общие вопросы Javascript 18 26.11.2012 00:49
Сымитировать нажатие клавиши по ее коду Win32 Events/DOM/Window 2 18.04.2012 02:37
Ajax. Работа с историей. Отследить нажатие "назад/вперед" Dorian_bs Общие вопросы Javascript 3 15.12.2011 03:19
Запуск выполнения PHP при нажатие на кнопку??? Abibas220 Общие вопросы Javascript 1 05.01.2011 12:05
АВТОМАТИЧЕСКОЕ НАЖАТИЕ КНОПКИ niger Общие вопросы Javascript 4 04.03.2010 13:59