Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium webdriver 使用webdriver滚动视图或元素_Selenium Webdriver - Fatal编程技术网

Selenium webdriver 使用webdriver滚动视图或元素

Selenium webdriver 使用webdriver滚动视图或元素,selenium-webdriver,Selenium Webdriver,我有一个动态列表,包含不同数量的项目,根据一些选择显示 如果列表中有7个以上的项目,则悬停时,列表将显示一个滚动条。(如果项目较少,则不会有滚动条。) 我根据其类名找到了滚动条的元素,但尝试使用webdriver滚动失败。 代码如下: //hover Actions action = new Actions(driver); WebElement placesList = driver.findElement(By.id("divPlaces")); action.moveToElement(p

我有一个动态列表,包含不同数量的项目,根据一些选择显示

如果列表中有7个以上的项目,则悬停时,列表将显示一个滚动条。(如果项目较少,则不会有滚动条。) 我根据其类名找到了滚动条的元素,但尝试使用webdriver滚动失败。 代码如下:

//hover
Actions action = new Actions(driver);
WebElement placesList = driver.findElement(By.id("divPlaces"));
action.moveToElement(placesList).perform();

//scroll the list
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true)", element);
HTML代码:

<div class="blk">
            <div class="smlhead">
                Places
            </div>

            <div id="divPlacesCont" class="sbarPrnt" style="height: 179.219px;">
            <div id="divPlaces" class="tilewrap sbarcont" style="height: 179px;">        

            <div class="blksmlr smlhead sngline">
                <a href="#" onclick="javascript:mcSearch.placeSelected(this, '12');">hyd</a>
            </div>
(removed 7 more items for simplicity...)

                <div class="sbar" style="display: block;">
                    <div class="sbarpos" style="height: 152.576px; top: 0px;"></div>
                </div>
             </div>
             </div>
</div>


地点
(为了简单起见,又删除了7项…)
更新:我有一个想法要分享。列表元素在页面的左侧总是可见的(我不需要移动/滚动到该元素,以使其与actions一样可见。moveToElement()会这样做)。当我悬停时,会出现此列表中的滚动条,我可以单击该滚动条,将其向下拖动以查看(最后一个)项目

使用上述代码,它将“框架”向上移动,即从“国家”到下面列表的所有内容向上移动一点,但动态中最后隐藏的项目仍然不可见


当使用JavaScriptI时,尝试滚动到列表项而不是滚动元素,但没有添加点。这不表示为标准的Select或表格。动态列表中的项目(位置)具有超链接。单击这些位置的超链接后,每个位置都会显示另一个互动程序列表。使用JavaScriptI时,请尝试滚动到列表项而不是滚动元素,但没有添加点。这不表示为标准的Select或表格。动态列表中的项目(位置)具有超链接。单击这些位置的超链接后,将显示每个位置的另一个平铺列表。