我无法理解为什么mouse::move()
无效。例如,在this page上。
如您所见,有10个元素,在每张图片上移动鼠标光标后,您将看到详细信息。我有一组每个元素id。我想在每个元素上移动光标,然后选择" div#hover_item_descriptors"将更新,我将使用它。这是我的代码:
this.eachThen(ids, function(resp){
var id = resp.data;
this.then(function(){
this.mouse.move('span#' + id + '_name'); //moving at the name of element
});
this.waitUntilVisible('div#hover_item_descriptors div#sticker_info', function(){
// it`s never work, because moving doesn't work
});
});
为什么不起作用?
答案 0 :(得分:1)
我也偶然发现了这件事,感谢这个问题:https://github.com/n1k0/casperjs/issues/208
如果您将光标悬停在不在视口中的元素上,则悬停事件将无效。
因此,要使其工作,请设置保证超过页面高度的视口高度,例如:
var casper = require('casper').create({
viewportSize : { width: 1280, height: 5000 }
});