元素不可见错误

时间:2015-08-19 13:35:43

标签: javascript angularjs selenium automation protractor

我正在尝试点击我页面上的上传文件链接,但我说上传链接不可见。我已经尝试将鼠标悬停在链接和下面的代码上。这对我来说很容易解决,所以我真的很困惑如何点击这个链接。 我尝试了什么:



var EC = protractor.ExpectedConditions;
var uploadLink = element(by.model('roomPlanCtrl.mm2010File'));

browser.wait(EC.elementToBeClickable(uploadLink), 10000);
uploadLink.click();




HTML:



<span class="dg-link ng-untouched ng-valid ng-dirty ng-valid-parse" ngf-select="" ng-model="roomPlanCtrl.mm2010File" accept=".mms" ng-hide="roomPlanCtrl.hideImportLinks">Upload a MeetingMatrix 2010 File</span>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:7)

如果您的元素不可见,那么您可以尝试滚动到该元素,然后单击它。如果它在页面上可见,则等待它加载,然后通过将其链接到wait()函数来单击它。这是一个样本 -

var EC = protractor.ExpectedConditions;
var uploadLink = element(by.model('roomPlanCtrl.mm2010File'));
browser.wait(EC.elementToBeClickable(uploadLink), 10000).then(function(){
    uploadLink.click();
});

希望它有所帮助。