问题:是否可以像在 selenium 中一样在 casperjs 和 phantomjs 中模拟拖放?

我正在尝试模拟在我的站点中使用 JQuery 完成的拖放事件。用我自己的JQuery“工作”手动执行“拖放”,但是在提交拖放事件所在的表单后,什么都不会发生,因为鼠标拖放事件附加了事件侦听器,并且这些听众不会被我的“手动”动作触发。我正在寻找类似于Testing jQuery Drag & Drop and Droppable with Selenium的东西。

这是一个仅在视觉上起作用但不会触发拖放事件处理程序的代码示例:

// "Simulate" drag&drop
casper.evaluate(function() {
  det = jQuery("table#draggableview_secondary_touts_block_order_1 tbody tr").last().detach();
  jQuery("table#draggableview_secondary_touts_block_order_1 tbody").prepend(det);
  jQuery("form#draggableviews-view-draggabletable-form-secondary-touts-block-order-homepage").submit();
});

解答

您可以直接触发事件,如下所示:https://ghostinspector.com/blog/simulate-drag-and-drop-javascript-casperjs/

这是否符合您的目的,或者您是否需要在更高级别触发的事件?

Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐