我想要做的是填写一个输入字段,专注于它并按Enter键提交它。所有这一切都在特定页面上使用GreaseMonkey自动完成。
到目前为止,这是我所拥有的,这个领域已经填满,但我无法使按键工作。
var my_email = "test@maildrop.cc";
var field = document.getElementById('email');
var key_to_press = new Array;
key_to_press["key"] = "Enter";
key_to_press["keyCode"] = "13";
var ev = new KeyboardEvent("pressEnter", key_to_press);
field.value = my_email;
setTimeout(function() {
field.focus();
}, 2000);
setTimeout(function() {
field.dispatchEvent(ev);
}, 2000);
以下是该页面的一些HTML:
<div class="form-group no-label required">
<label class="control-label" for="invite-email"></label>
<div class="input-group">
<input id="hiddenKid" type="hidden" value="BUXB4U"></input>
<input id="email" class="form-control" type="email" placeholder="E-mail Address" data-type="email" name="invite-email"></input>
</div>
</div>
<div id="submit_email" class="btn btn-submit-invite"></div>
请注意,还有一个提交电子邮件的按钮,我可以使用它,但我真的不知道怎么做,因为它只是一个div,可能是由网站上的其他一些JS处理的...... / p>
所以有人知道如何让enter键发生,或者点击按钮?
答案 0 :(得分:3)
最后我设法点击了按钮。 .click()
无效,因为该事件使用了.tap()
所以这就是我刚刚做的事情:
$('#submit_email').tap();