执行java脚本以使元素可见

时间:2015-09-08 14:27:13

标签: c# html selenium

我试图使用Selenium自动使用网站,有一次我想点击这样定义的隐藏按钮:

<body>
    <div class="smenu" id="smenu4">
        <input tabIndex="-1" type="button" onclick="SearchEng" value="FindEng" />
        <!--> Lots of inputs <!-->
    </div>
</body>

我已经尝试过简单地点击按钮,但它不起作用。我可以选择它并检索信息。这就是我现在尝试运行javascript以便在点击之前显示按钮的原因。这是我的代码:

IWebElement element = driver.FindElement(By.XPath("//div[@id='smenu4']/input[@value=FindEng"));
String js = "arguments[0].style.height='auto'; arguments[0].style.visibility='visible';";
((IJavaScriptExecutor)driver).ExecuteScript(js, element);

当我启动它时没有任何反应。我可以运行脚本吗?你能在任何网站上运行它们吗? - 我使用的是Internet Explorer 11,Windows 7.谢谢!

1 个答案:

答案 0 :(得分:1)

检查浏览器中的元素,并检查元素不可见的原因是什么。或者只是简单地比较元素是否可见。可能的原因:

当你知道原因时,你会知道解决方案:)