如何以编程方式生成mousedown或keypress事件?

时间:2011-05-16 21:20:35

标签: javascript html dom

我正在开发一个在特定网页上运行一些javascript的chrome扩展程序。

我想在Google文档演示文稿视图页面的“上一页”,“下一页”工具栏上模拟点击操作。 不幸的是,两者都是带有与混淆的javascript相对应的onmousedown事件的标签。

如果他们是锚, 的document.getElementById( “ToolbarNext”)的onclick();作品。然而,onmousedown的相同似乎不起作用,可能是因为它需要鼠标坐标等。 如何生成此事件?

另一种选择是在DOM上模拟按键'j'或'k'。我尝试了一些选项,但也无法解决这个问题。

2 个答案:

答案 0 :(得分:2)

尝试dispatchEvent/fireEvent方法

答案 1 :(得分:-1)

您可以收集附加到onmousedown的函数并执行它。 但是,如果需要,您必须重新创建event对象:

<input type="button" onmousedown="console.log('mousedown')" value="click me" />
<script>
    var inp = document.getElementsByTagName('INPUT')[0],
        fn = inp.onmousedown;
        fn({target:inp/*, other properties of the event object if needed */});
</script>