Laravel Dusk如何执行右键单击每个元素?

问题描述 投票:0回答:1

我正在使用Laravel 5.8 - Dusk。

我想知道在下面的示例中迭代它们时如何对每个元素执行右键单击:

$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会更改元素的属性,如果它被单击,拖动等等。

php laravel laravel-dusk laravel-5.8
1个回答
2
投票

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

foreach ($elems as $elem) {
    (new WebDriverActions($browser->driver))->contextClick($elem)->perform();
}
© www.soinside.com 2019 - 2024. All rights reserved.