模拟真正的鼠标点击

时间:2011-04-10 03:58:54

标签: javascript google-chrome triggers click

我想要做的是在youtube上执行鼠标点击,在页面加载时按播放。如何单击该特定位置(假设它始终位于同一位置)?

我尝试过但

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

和那样的东西。什么都没有用。有什么建议?我正在使用谷歌浏览器


好吧好像有点混乱所以我会进一步解释。我创建了一个与击键事件相关联的弹出窗口,我想要做的是通过单击弹出窗口中的麦克风来触发x-webkit-speech,这样用户就不必自己点击它。我尝试了一些像上面那样的方法并没有成功。在此之后我的程序将完成,所以我真的很想得到一些帮助,谢谢:]

2 个答案:

答案 0 :(得分:3)

一般来说,浏览器不会让模拟鼠标点击触发"真实"行动,例如jQuery click()不会导致浏览器关注链接。否则,垃圾邮件发送者可能会在每次加载页面时触发横幅广告点击(以及其他更多恶意用途)。

根据http://www.filosophy.org/2011/03/talking-to-the-web-the-basics-of-html5-speech-input/

  

最终,可以使用startSpeechInput()方法直接调用语音识别,但据我所知,这在任何当前浏览器中都没有实现。

我建议等待Chrome实施API,以便您可以从JavaScript触发语音输入。

答案 1 :(得分:1)

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


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

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

这是常规可点击的项目。但是使用YouTube视频,您还可以将&autoplay=1附加到网址的末尾(如果它嵌入到网页中)。

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