【问题标题】:protractor | how to click a div with property of ng-click量角器 |如何单击具有 ng-click 属性的 div
【发布时间】:2016-10-07 06:08:09
【问题描述】:

当我试图点击一个 div 时,我不断收到- Failed: element not visible

Uitlis: openClosedSignElement(){
    $('[ng-click="changeViewToggle(category, taskSetProperty);isOpen = !isOpen"]').click();
}

e2e: it('Should add another task to template successfully', () =>  {
    taskUtils.openClosedSignElement();
}

tried also this inside Utilis: openClosedSignElement(){ 
    browser.element(by.id('addTaskTemplate')).click();
}

HTML

<div ng-show="header" id="closeSign" 
     class="closeSign"   ng-init="isOpen = isOpen ? isOpen : false"  
     ng-click="changeViewToggle(category, taskSetProperty);isOpen = !isOpen">
</div>

【问题讨论】:

  • 分享您的 HTML 代码
  • `
    `
  • 您应该更新您的问题,并且在 html 上进行计算不是在控制器中进行的好方法。
  • 代码很复杂,一般情况下我需要点击div,如果有任何例子会很好

标签: javascript html angularjs dom protractor


【解决方案1】:

您可以通过检查元素是否由isDisplayed 显示来实现所需的输出,否则让单击例如head 元素然后继续您的断言

$('[ng-show=saving].icon-spin').isDisplayed().then(function(result) { //check whether element is displaye
  if (result) { //if yes go ahead
    $('[ng-click="changeViewToggle(category, taskSetProperty);isOpen = !isOpen"]').click();
  } else { //else by clickin relvent element make it display
    $("#header").click().then(function() {
        $('[ng-click="changeViewToggle(category, taskSetProperty);isOpen = !isOpen"]').click();
      }
    })
})

【讨论】:

  • 你好,谢谢你的快速评论,你能告诉我我需要在“[ng-show=saving].icon-spin'”里面放什么
猜你喜欢
  • 1970-01-01
  • 2016-03-26
  • 1970-01-01
  • 2015-06-13
  • 2019-08-09
  • 2014-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多