用jquery-ui进行拖拽时,拖拽开始时被拖拽对象就与鼠标突然偏移一段距离,这是怎么回事?

新手上路,请多包涵

我将一个svg元素设置成可拖拽,当用鼠标点击这个svg刚要开始移动时,这个svg元素突然偏移一段距离,然后才跟随我的鼠标移动而移动,而且这个偏移在drag时和stop后始终保持着,请问是什么原因,该怎样解决,谢谢!

阅读 2k
1 个回答

今天遇到同样的问题,翻了半天源码。最后发现是因为设置元素垂直居中时候使用transform 导致的。jquery-ui在计算宽高时候出现错误。用别的方式实现居中就可以了。我这里使用的是margin

直接将

transform: 'translate(-50%,-50%)'

改成

margin: '-10% 0px 0px -15%'

就没问题了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题