2015-09-16 48 views
1

如何滾動iframe元素裏面正常的瀏覽器窗口?量角器在瀏覽器窗口內滾動iframe

下列哪項不工作(試圖滾動窗口,而不是iFrame):

myPage.myItem().click(); 
browser.executeScript("window.scrollTo(0,10000);").then(function() { ...}); 
+0

難道u開關滾動它之前的iframe?如果可能,你可以發佈該代碼嗎? –

+0

是的,我做到了。現在編輯帖子 –

+0

你可以試試這樣滾動 - var frame = element(by.tagName('iframe')); frame.executeScript(「window.scrollTo(0,10000);」)。then(function(){...});'?框架變量是您切換到的iframe窗口。 –

回答

3

我找到了解決辦法由自己,也許它可以幫助別人:

 return browser.executeScript(function() { 
      var iframe = document.getElementById("myobject"); 
      var docjument = iframe.contentDocument.body; 
      docjument.scrollRight= 111; 
      return iframeDoc.scrollRight; 
     }).then(...) 

就像一個魅力。

感謝反正

0

嘗試在框架內滾動,一旦你切換到它。還使用iframe元素執行滾動而不是全局browser對象。這是如何 -

browser.switchTo().defaultContent() //switches to first frame in DOM 
.then(function(){ 
    var frame = element(by.tagName('iframe')); 
    frame.click().then(function(){ 
     frame.executeScript("window.scrollTo(0,10000);").then(function() { ...}); 
    }); 
}); 

希望這可以幫助。

+0

感謝您的建議。我試了一下,看起來好像跑了 - 然而,沒有任何反應,例如滾動不會發生... –