2016-06-20 60 views
0

我在頁面中有幾個links。有幾個links這將是可見的,如果您向下滾動頁面..當元素在屏幕中不可見時,點擊不起作用硒

我正在使用C# - Protractor for script automation

它說元素顯示,當我檢查布爾條件。但是,如果我clicklink它不導航到實際的頁面。

當使用debug,同時執行click命令,如果我向下滾動頁面,那麼它工作正常。如何解決這個向下滾動問題?

IJavaScriptExecutor js = ngDriver as IJavaScriptExecutor; 
js.ExecuteScript('arguments[0].click()', targetElement); 
Getting error that Too many characters in character literal 

該句法正確嗎?

感謝

+0

硒自動在其上進行點擊之前滾動到元素,所以一定是別的東西在這裏繼續。 – Mobrockers

+0

它點擊,但保持在同一屏幕上。 – ChanGan

+0

爲什麼你不使用C#?有什麼特別的原因,你想通過JS執行它? Selenium有一個IWebElement.Click()函數。您只需使用IWebDriver.FindElement()函數獲取元素,它將以IWebElement的形式返回元素。然後,您只需在該元素上運行Click()方法。也許JS是一些錯誤的原因。 –

回答

0

這爲我工作

var elem = driver.FindElement(By.CssSelector("something")); 
      ((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].scrollIntoView(true);", elem); 
相關問題