AngularJs量角器:元素滑出菜单不可见 [英] AngularJs Protractor: Element in slide out menu not visible
问题描述
我回来了更多的量角器Q&安培; A。所以,我对面的一个问题试图为发现超出菜单幻灯片中的元素时到来。
I'm back with more Protractor Q&A. So, I am coming across an issue when trying for find an element that is inside a slide out menu.
HTML的代码段:
<div class="ng-scope" ui-view="navmenu">
<nav class="menu slide-menu-left ng-scope">
<md-content class="md-default-theme" style="display: table" ng-click="slideMenuLeft()" tabindex="0">
<button class="md-button md-default-theme" ng-transclude=""
style="width:50%;height:72px;border-right:1px solid #ddd;border-bottom:1px solid #ddd"
ng-click="checkmap()" tabindex="0">
下面是抢按钮拖出此菜单,我已经试过的方法:
Here are the ways I have tried to grab the the button out of this menu:
element(by.css('Button[ng-click="logoff()"]'));
element(by.xpath('/html/body/section/div[@class="ng-scope"]/nav[@class="menu slide-menu-left ng-scope"]/md-content/button[@ng-click="logoff()"]'));
量角器不喜欢并且继续告诉我:
Protractor does not like and proceeds to tell me this:
Stacktrace:
ElementNotVisibleError: element not visible
(Session info: chrome=40.0.2214.115)
(Driver info: chromedriver=2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf),platform=Windows NT 6.3 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 31 milliseconds
Build info: version: '2.45.0', revision: '5017cb8', time: '2015-02-26 23:59:50'
谁能把我的建议是什么,我可能做错了吗?
Can anyone throw me suggestions as to what I may be doing wrong?
推荐答案
您需要找到并点击子菜单之前,打开菜单:
You need to open up the menu before locating and clicking the submenu:
element(by.css('nav.menu > md-content')).click();
element(by.css('nav.menu > md-content > button[ng-click="logoff()"]')).click();
您可能还需要使用 elementToBeClickable
预计条件来的等待子成为可点击的(需要量角器1.7或以上):
You may also need to use a elementToBeClickable
expected condition to wait for the submenu to become clickable (needs protractor 1.7 or above):
var EC = protractor.ExpectedConditions;
var logoff = element(by.css('nav.menu > md-content > button[ng-click="logoff()"]'));
browser.wait(EC.elementToBeClickable(logoff), 10000);
logoff.click();
这篇关于AngularJs量角器:元素滑出菜单不可见的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!