jquery(或纯js)模拟输入按键进行测试
答
var e = jQuery.Event("keypress");
e.which = 13; //choose the one you want
e.keyCode = 13;
$("#theInputToTest").trigger(e);
答
对于那些谁希望这样做的纯JavaScript,看:
- initKeyboardEvent为IE9 +,Chrome和Safari
- initKeyEvent为Firefox
你可以做一些像(这里为Firefox)
var ev = document.createEvent('KeyboardEvent');
// Send key '13' (= enter)
ev.initKeyEvent(
'keydown', true, true, window, false, false, false, false, 13, 0);
document.body.dispatchEvent(ev);
+4
看起来这个答案需要更新。 KeyboardEvent现在是标准的:https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/KeyboardEvent(不推荐使用initKeyEvent) – JoeRocc 2016-12-28 01:37:25
谢谢redsquare。从文档 - http://api.jquery.com/trigger/这个解决方案对我来说并不明显。它们显示它们用作.trigger(eventType,extraParameters)。我应该能够根据文档来弄清楚吗?这是官方支持的功能吗? – morgancodes 2010-07-18 19:23:13
@morgancodes,我猜不容易,没有解释,但暗示在下面。 – redsquare 2010-07-19 01:47:56
演示脚本很差。检查使用的密钥并验证它是预期的密钥,以便完成。 – 2011-07-30 12:01:53