我正在尝试使用JavaScript模拟浏览器中的用户输入。 单击事件已成功创建和分派,但出于某些原因,键盘事件的类似代码似乎根本不起作用。
以下是示例代码:
var event = document.createEvent("KeyboardEvent"); event.initKeyEvent("keydown", true, true, window, false, false, false, false, 87, 0); document.getElementById("id").dispatchEvent(event);
这段代码返回true,但相应的字符并没有出现在输入框中。 我也尝试了keypress和keyup,但它们也无法正常工作(在FF和Chrome中测试)。
是否由于某些安全原因,浏览器禁止了这种操作?还是我做错了什么?是否有解决方法使其正常工作?
以下是示例代码:
var event = document.createEvent("KeyboardEvent"); event.initKeyEvent("keydown", true, true, window, false, false, false, false, 87, 0); document.getElementById("id").dispatchEvent(event);
这段代码返回true,但相应的字符并没有出现在输入框中。 我也尝试了keypress和keyup,但它们也无法正常工作(在FF和Chrome中测试)。
是否由于某些安全原因,浏览器禁止了这种操作?还是我做错了什么?是否有解决方法使其正常工作?