php - Laravel Dusk 如何对每个元素执行 RightClick?
问题描述
我正在使用 Laravel 5.8 - 黄昏。
我想知道在以下示例中迭代每个元素时如何右键单击它们:
$browser->visit('https://www.website.com')
->script('window.scrollTo(0, 10000);');
$elems = $browser
->pause(1000)
->elements('.selectable');
foreach ($elems as $elem) {
$elem->rightClick(); // this does not work
}
是否可以对每个元素执行右键单击或拖动事件?我基本上想对元素执行任何操作,因为如果单击、拖动等,javascript 会更改元素上的属性。
解决方案
您可以使用rightClick()
方法中的代码:
foreach ($elems as $elem) {
(new WebDriverActions($browser->driver))->contextClick($elem)->perform();
}
推荐阅读
- aframe - 有没有办法在移动设备上查看 A-Frame 检查器?
- string - 带我了解字符串重叠算法
- flutter - flutter : 如何翻转这个路径剪辑 Bezier
- c - 如何使用 gzip 压缩和分块传输编码修复来自 c 套接字 http 服务器的图像中的奇怪失真
- javascript - 如何在 ejs 模板中从 mysql 数据库中呈现值
- javascript - 更改按钮的方向
- .net - 如何从 .NET (C#) 程序(在 Linux 下)调用本机(C 或汇编)代码?
- c++ - 为什么访问未初始化数组中的元素会输出奇怪的值?
- php - 致命错误:composer.lock 是为 PHP 7.4 或更高版本创建的,但当前 PHP 版本是 7.1.33
- javascript - 如何更改高图表中图表区域的背景颜色?