我试图在表格中向下滚动并点击元素。
这是我的功能:
var scrollIntoView = function () {
arguments[0].scrollIntoView();
}
element.all(by.css('div.ui-grid-selection-row-header-buttons')).then(function(arr) {
var row = arr[8];
browser.executeScript(scrollIntoView, row.getWebElement()).then(function () {
row.click();
});
});
这个脚本实际上工作甚至向下滚动,当我在arr []中使用更高的数字(索引)时bproblem开始;
例如8个工作,但是如果我使用20它没有,我很确定那里有50个值那么问题。
任何提示都会帮助人
答案 0 :(得分:3)
如果要滚动到元素,可以使用
browser.actions().mouseMove(element).perform();
之后浏览器将聚焦该元素。
答案 1 :(得分:0)
这个经过测试的示例演示了如何使用javascript滚动到某个元素并单击相同的元素。
if
答案 2 :(得分:0)
您实际上可以执行以下操作:
$$('div.ui-grid-selection-row-header-buttons').each(function (ele) {
browser.actions().mouseMove(ele).click().perform();
});
$$ 实际上代表 element.all(by.css('。abc'))
如果您不想单击所有元素,而是根据以下过滤条件选择元素,则可以使用 filter():https://www.protractortest.org/#/api?view=ElementArrayFinder.prototype.filter