【发布时间】:2017-03-27 23:52:23
【问题描述】:
我正在尝试在页面加载时模拟输入按键,但它似乎不起作用。只有当我单击输入并按 Enter 时,我才会发现成功。我希望在页面加载时看到警报。
如果您更改我在下面列出的顺序,它会提供警报,但按下的键未定义。
我在这里出错的任何想法?
在此处查看演示 - http://jsfiddle.net/3xTM2/1321/
HTML
<input id="test" type="text" />
Javascript
$('#test').trigger(jQuery.Event('keypress', { keycode: 13 }));
$('#test').keypress(function(e) {
alert(e.keyCode);
});
【问题讨论】:
-
这是一个重复的问题...请参阅此答案:stackoverflow.com/a/832121/2159528
-
您在定义事件之前触发了它。只需更改顺序即可。
-
@Ibu 如果您更改订单,则会提供警报,但按下的键未定义。
-
你的小提琴正在使用 jQuery 1.4.2 并且文档说:
As of jQuery 1.6, you can also pass an object to jQuery.Event() and its properties will be set on the newly created Event object.
标签: javascript jquery html