Protractor 量角器向左滚动,但类有多个实例

Protractor 量角器向左滚动,但类有多个实例,protractor,Protractor,我有一个带有class=“objbox”的元素,但该属性有多个实例 我用于滚动的当前代码是browser.executeScript('$(“.objbox”).scrollLeft('+strPixels+')但是由于有多个实例,它似乎正在获取第一个实例,并且没有成功地滚动到目标元素 我想知道是否可以在我的代码中包含父元素,或者是否有不同的解决方法 <div class="dhxgrid2-wrapper"> <div class="dhtmlxgrid-contai

我有一个带有
class=“objbox”
的元素,但该属性有多个实例

我用于滚动的当前代码是
browser.executeScript('$(“.objbox”).scrollLeft('+strPixels+')但是由于有多个实例,它似乎正在获取第一个实例,并且没有成功地滚动到目标元素

我想知道是否可以在我的代码中包含父元素,或者是否有不同的解决方法

<div class="dhxgrid2-wrapper">
    <div class="dhtmlxgrid-container   gridbox">
        <div class="objbox">
            ...
        </div>
    </div>
</div>

...
这是可能的

你需要做的是以下几点

//定义父级的elementfinder,选择选项A或B
常量elementFinderWithParentA=$('.dhtmlxgrid container.objbox');
//或
常量elementFinderWithParentB=$('.dhtmlxgrid容器').$('.objbox');
//要滚动的数量
常数左=50;
browser.executeScript('arguments[0].scrollLeft=arguments[1];',elementFinderWithParentA,scrollLeft);
//或者让它更具可读性,创建一个用于滚动的函数
//并将其传递给浏览器。executeScript
函数scrollToLeft(元素,scrollAmount){
element.scrollLeft=滚动金额;
}

executeScript(scrollToLeft,elementFinderWithParentA,scrollLeft)顺便说一句,objbox已成功捕获,但滚动不起作用。我通过获取objbox的属性确认了这一点。您是否通过控制台仅使用Chrome中的Devtools进行了尝试?然后它会滚动吗?在控制台中,它可以正常滚动,
$(“.objbox”)。向左滚动(800)
,但它会自动使用第二个元素。执行时,不会发生任何事情。然后在CSS选择器中使用。我的第一个解决方案是添加parentyeah,元素被正确捕获,但scroll不起作用。