Имитация реального щелчка мыши

Что я хочу сделать - это щелкнуть мышью на youtube, чтобы нажать кнопку воспроизведения, когда загружается страница. Как я нажимаю это конкретное местоположение (при условии, что он всегда находится в одном месте)?

Я пробовал и терпел неудачу с

var e = document.getElementById('myelem'); e.click();
var e = new jQuery.Event("click");e.pageX=x;e.pageY=y;$("#elem").trigger(e);

и тому подобное. ничего действительно не работает. Какие-либо предложения? Я использую google chrome


ладно, похоже, что была небольшая путаница, поэтому я буду объяснять далее. Я создал всплывающее окно, связанное с событием нажатия клавиши, которое я хочу сделать, это запустить x-webkit-speech, щелкнув микрофон, который находится в моем всплывающем окне, чтобы пользователь не мог сам щелкнуть его. Я пробовал кучу способов, как указано выше, и не был успешным. После этого моя программа будет выполнена, поэтому мне очень понравится помощь:]

Ответ 1

В общем, браузеры не позволят имитируемым щелчкам мыши запускать "реальные" действия, например. jQuery click() не приведет к тому, что браузер будет следовать ссылке. В противном случае спамеры могут запускать баннерные щелчки при каждой загрузке страницы (среди других более злонамеренных целей).

Согласно http://www.filosophy.org/2011/03/talking-to-the-web-the-basics-of-html5-speech-input/:

В конце концов, можно будет вызывать распознавание речи непосредственно с помощью метода startSpeechInput(), но, насколько мне известно, это не реализовано ни в одном из текущих браузеров.

Я предлагаю, чтобы Chrome реализовал API, чтобы вы могли запускать речевой ввод из JavaScript.

Ответ 2

<button id="myButton" onClick="alert('You clicked me!');">Click me</button>


document.getElementById("myButton").click();

http://fiddle.jshell.net/Shaz/HgyeZ/

Это с обычными элементами, которые можно щелкнуть. Но с видео на YouTube вы также можете добавить &autoplay=1 в конец URL-адреса (если он встроен в страницу).

http://fiddle.jshell.net/Shaz/tcMCa/