首页 > 解决方案 > 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 会更改元素上的属性。

标签: phplaravellaravel-dusklaravel-5.8

解决方案


您可以使用rightClick()方法中的代码:

foreach ($elems as $elem) {
    (new WebDriverActions($browser->driver))->contextClick($elem)->perform();
}

推荐阅读