2015-09-16 2 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);"), затем (function() {...}); '? frame variable - это окно 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

Спасибо за ваше предложение. Я попробовал, и кажется, что он работает, но ничего не происходит, например. прокрутки не происходит ... –

Смежные вопросы