繁体   English   中英

HTML5拖放。 检测在哪里抓取元素

[英]HTML5 Drag and drop. Detecting where element was grabbed

我正在使用HTML 5拖放API,并实现可排序列表和自动滚动。 对于某些功能,我希望能够检测到元素的哪一部分已被抓取

这是插图

在此处输入图片说明

任何帮助,将不胜感激,谢谢

您可以使用计算出的元素的padding + width和MouseEventoffsetX属性来计算所选区域。

yourElement.addEventListener('mousedown', function onDragStart(event){
  let width = parseInt(window.getComputedStyle(yourElement).getPropertyValue('width'));
  let padding = parseInt(window.getComputedStyle(yourElement).getPropertyValue('padding-left'));
  let position = event.offsetX;
  let middle = (width / 2) + padding;

  if (position <= middle) {
    console.log('left');
  } else {
    console.log('right');
  }
});

有关示例,请参见此jsfiddle: https ://jsfiddle.net/c23Lu6gy/28/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM