send_keys_ok("//fie-6ren">
gpt4 book ai didi

javascript - 如何使用 Test::WWW::Selenium 将击键发送到 Firefox?

转载 作者:行者123 更新时间:2023-11-30 00:07:46 25 4
gpt4 key购买 nike

我试过:

$sel->type_keys_ok("//fieldset[2]/input", "KEYS");

没有结果。什么都没有改变。

还试过:

$sel->send_keys_ok("//fieldset[2]/input", "KEYS");

未实现。

也试过:

my $res = $sel->get_eval('
function simulateKeyEvent(character) {
var evt = document.createEvent("KeyboardEvent");
(evt.initKeyEvent || evt.initKeyboardEvent)("keypress", true, true, window,
0, 0, 0, 0,
0, character.charCodeAt(0))
var canceled = !body.dispatchEvent(evt);
if(canceled) {
// A handler called preventDefault
alert("canceled");
} else {
// None of the handlers called preventDefault
alert("not canceled");
}
};
simulateKeyEvent("K");' );

然后我得到这个错误:'initKeyEvent' 调用了一个没有实现接口(interface) KeyboardEvent 的对象。谢谢。

最佳答案

版本 1:

my $element = $sel->find_element("//input[\@name='q']");
$element->send_keys("KEYS");
$element->submit();

使用 WDKeys 的版本 2:

use Selenium::Remote::WDKeys;

my $element = $sel->find_element("//input[\@name='q']");
$element->send_keys("KEYS");
$sel->send_keys_to_active_element(KEYS->{'enter'});

有关更多信息,请参阅 CPAN Selenium::Remote::Driver

关于javascript - 如何使用 Test::WWW::Selenium 将击键发送到 Firefox?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37843981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com