首页 > 技术文章 > selenium移动div里面的滚动条,操作弹出对话框

limxiaosi 2016-10-15 17:22 原文

还是使用js来移动

首先要定位到这个元素

倾向于使用js来定位元素,输入下面的脚本,按下回车键,即可在调试页面看到对应的div块
$("div.table-responsive")

滚动方法使用scrollLeft()
$("div.table-responsive").scrollLeft(1000)

应用到java selenium中

为了避免输入数字可以这样写

((JavascriptExecutor) driver).executeScript("$(\"div.table-responsive\").scrollLeft(document.body.scrollWidth)");

二、操作弹出对话框

经常前端的对话框是采用div块的形式

比如定位<div class="mb_btnbox" ..><span><span></div>里面的第二个span

$("div.mb_btnbox").find("span:eq(1)")

((JavascriptExecutor ) driver).executeScript("$(\"div.mb_btnbox\").find(\"span:eq(1)\").click()");

要熟练运用js,jquery的函数,会发现当运用常用的selenium函数没办法定位的元素,比如元素里面id是变化的类似这种,可以依据元素所在的层级结构运动xpath操作

但是比如弹出对话框这种,我更倾向于选择js去操作“确定”、“取消”这种,方便快捷还不容易出错,也提升对js,jquery的熟悉度

 

推荐阅读