SendKeys(Keys.Tab)在Chrome版本53.0.2785.116上不起作用

时间:2016-09-26 18:20:52

标签: tabs key sendkeys

今天我发现SendKeys(Keys.Tab)无法在Chrome webdriver上运行。但是它在IE和FireFox上运行得很好。除了Tab之外,我尝试了很少的其他键,如Space,Backspace,Clear,一些文本,Enter等在Chrome上按预期工作。

例如:            私人IWebDriver驱动程序;            私有字符串baseURL;

       driver = new ChromeDriver();
       driver.Navigate().GoToUrl("https://accounts.google.com/SignUp?");
       driver.FindElement(By.Id("FirstName")).Clear();
       driver.FindElement(By.Id("FirstName")).SendKeys(Keys.Tab);

有人知道为什么,Keys.Tab不会使用最新的Chrome版本53.0.2785.116吗?

操作系统:Windows 7 Service Pack 1

光标假设移动/聚焦到姓氏文本字段

1 个答案:

答案 0 :(得分:0)

尝试在代码末尾添加以下代码:

var element = driver.FindElement(By.Id("FirstName"));
if (!element.Equals(driver.SwitchTo().ActiveElement())) return;
var js = (IJavaScriptExecutor)driver;
js.ExecuteScript("arguments[0].blur();", element);

这意味着如果光标仍然聚焦于当前元素,则触发模糊功能移动到下一个元素。