如何使用javascript取消选择css样式?
我正在使用selenium自动化一些网站。有一个多普敦让我很难过,因为它不是本地的,因为他们使用了一些定制设计的。所以我需要将它的css类设置为hidden,这样我就可以轻松地访问本机类 这是在我点击它之前: 这是在: 那么现在我如何用js自动完成它呢?我试过这样的方法,但不起作用:如何使用javascript取消选择css样式?,javascript,jquery,css,selenium,selenium-webdriver,Javascript,Jquery,Css,Selenium,Selenium Webdriver,我正在使用selenium自动化一些网站。有一个多普敦让我很难过,因为它不是本地的,因为他们使用了一些定制设计的。所以我需要将它的css类设置为hidden,这样我就可以轻松地访问本机类 这是在我点击它之前: 这是在: 那么现在我如何用js自动完成它呢?我试过这样的方法,但不起作用: var js:JavascriptExecutor = driver.asInstanceOf[JavascriptExecutor] js.executeScript("$('.selectpick
var js:JavascriptExecutor = driver.asInstanceOf[JavascriptExecutor]
js.executeScript("$('.selectpicker select').removeClass('bs-select-hidden')")
感谢您使用了错误的CSS选择器:“.selectpicker select”表示“具有selectpicker类的元素的SelectElements子元素” 您希望select元素具有selectpicker类 执行以下javascript:
$('select.selectpicker').show();
它将在该元素上设置“显示:块”,并且它将可见
编辑
从选择器选择器文档()。
隐藏自定义选项,选择并显示本机选项。
由于选择有显示:无!重要信息
我们需要强制它显示
有三种方法:
- 删除使其隐藏的特定类“selectpicker”和“bs select hidden”
$('select.selectpicker').selectpicker('hide') .removeClass("selectpicker bs-select-hidden");
- 删除所有类(可能会破坏布局)
- 强制显示:内联块(选择的默认显示值)
document.getElementById("whatever").className = "";
或者如果你想保留一个特定的类,你可以重新设置这个类
document.getElementById("whatever").className = "";
document.getElementById("whatever").className = "classToKeep";
检查这个
或者如果您使用jquery
$( "id/class" ).removeClass( "blue under" );
它不起作用了……什么也没发生。只是为了确保,我想隐藏非本机下拉列表:)但你也想显示本机下拉列表吗?是的,我想,但你给我的这个命令对此无效:/你能给我们一个url来测试吗?我希望我可以,它是我为系统工作的comp,它有一个用户名和pass的登录名。我能为你提供任何信息吗。。?我想从截图中你可以理解我使用了jquary,但这不起作用…$(“id/class”)。removeClass(“蓝色下方”)选中此选项,你不应该试图强制更改类。您应该像用户那样与页面交互。硒就是这样设计的。用户将如何更改类?
document.getElementById("whatever").className = "";
document.getElementById("whatever").className = "classToKeep";
$( "id/class" ).removeClass( "blue under" );