[英]Selenium c# - Button click fails in Firefox…but only when using WebDriver
这是我的难题...我有一个按钮,该按钮在使用WebDriver打开的浏览器窗口中无法单击。
按钮:
<div class="ribbon-section">
<span class="section-title" data-bind="text: title">Email</span>
<div class="layout" data-bind="css: { 'vertical': isVertical ,layout:true}">
<div id="email-btn" class="ribbon-control ribbon-button ribbon-button-large" data-bind="attr: { id: id }, css: { disabled: disabled, 'ribbon-button-large': size() == 'large', 'ribbon-button-small': size() == 'small', 'ribbon-button-medium': size() == 'medium' }, click: onClick">
<img class="ribbon-icon ribbon-normal" data-bind="attr: { src: imgNormal }, visible: !disabled()" src="/_layouts/15/klscript/content/images/ribbon/normal/email-link.png" style="">
<img class="ribbon-icon ribbon-disabled" data-bind="attr: { src: imgDisabled }, visible: disabled()" src="/_layouts/15/klscript/content/images/ribbon/disabled/email-link.png" style="display: none;">
<span class="control-title" data-bind="html: title">Email Link</span>
<span class="control-help" data-bind="text: tooltip">Email Link</span>
</div>
</div>
</div>
并非WebDriver无法找到该元素或类似的东西。 WebDriver或手动都无法单击该按钮。 什么都没发生。 如果我手动打开Firefox,则该按钮是可单击的。
我已经试过了:
driver.FindElement(By.Id("email-btn")).Click();
和这个:
IWebElement emailBtn = driver.FindElement(By.Id("email-btn"));
Actions act = new Actions(driver);
act.Click(emailBtn);
和这个:
IJavaScriptExecutor js = driver as IJavaScriptExecutor;
js.ExecuteScript("document.getElementById('email-btn').click()");
将其与没有问题的另一个按钮进行比较,我看到除了ID以外,它们是相同的:
<div id="email-btn" class="ribbon-control ribbon-button ribbon-button-large" data-bind="attr: { id: id }, css: { disabled: disabled, 'ribbon-button-large': size() == 'large', 'ribbon-button-small': size() == 'small', 'ribbon-button-medium': size() == 'medium' }, click: onClick">
<div id="download-item-btn" class="ribbon-control ribbon-button ribbon-button-large" data-bind="attr: { id: id }, css: { disabled: disabled, 'ribbon-button-large': size() == 'large', 'ribbon-button-small': size() == 'small', 'ribbon-button-medium': size() == 'medium' }, click: onClick">
还尝试在Firefox中禁用图片和/或CSS。
有任何想法吗?
您需要从元素css中删除“ disabled:disabled”。 在那之后你应该已经准备好了
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.