【问题标题】:Drag, drop and mousewheel?拖放和鼠标滚轮?
【发布时间】:2013-03-28 13:57:22
【问题描述】:

短版:在拖放操作过程中是否可以触发鼠标滚轮事件?

长版:

我目前正处于此特定功能的设计阶段,所以我还没有任何代码。我问这个是为了知道走这条路是否浪费时间,所以我可以设计其他东西。

基本上,我的一侧是物品清单,另一侧是篮子。就目前而言,每个项目都有一个输入框和一个按钮,因此您可以输入数量并将其添加到购物篮中(反之亦然)。我想添加拖放功能,以便您可以以一种或另一种方式拖动项目。如果您只想要一个项目,这很好用,但我想添加一种在拖动时调整数量的方法。想到了鼠标滚轮,因为您一开始就已经在使用鼠标进行拖动了。

所以在深入研究代码之前,我需要知道在拖动过程中是否真的可以接收鼠标滚轮事件,如果可以,我应该在哪里添加监听器?

【问题讨论】:

  • 我认为大多数人在尝试使用鼠标滚轮时会遇到问题,同时按住鼠标左键进行拖动。
  • @AlfonsoML 我认为这不是问题,因为它是一种可选的替代输入形式。
  • @AlfonsoML 不是我...左撇子使用右手鼠标,按住左键时滚动(用我的中指 )很容易
  • 我并不是说它不能完成或没有人会使用它,我只是指出大多数人使用相同的手指左键单击和鼠标滚轮。这就是为什么我认为这不是一个常用的功能。
  • 你尝试过实现原型吗?

标签: javascript drag-and-drop mousewheel


【解决方案1】:

如果您想检查在wheel 事件期间是否按下了主鼠标按钮,您可以使用以下命令:

addEventListener('wheel', function (event) {
  if (event.buttons & 1) {
    alert("You scrolled while the primary mouse button was down!");
  }
}

很遗憾,如果您将Drag and Drop APIdraggable='true' 属性一起使用,则wheelscroll 事件不会在拖动过程中触发,因此您将无法触发和处理scroll 事件.

【讨论】:

  • 13 年提出问题,20 年回答,现在终于注意到并接受了!这确实很不幸,但有点道理,是的。哦,好吧!
猜你喜欢
  • 1970-01-01
  • 2011-08-28
  • 1970-01-01
  • 2017-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多