首页 > 软件开发 > JavaScript >

html/javascript 如何实现标签拖拽移动

来源:互联网 2023-03-16 23:58:23 版权归原作者所有,如有侵权,请联系我们

本经验介绍在html/javascript开发中,如何实现标签的拖拽移动。应用场景如:悬浮工具面板的移动。Vq5办公区 - 实用经验教程分享!

html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

工具/原料

  • Firefox

方法/步骤

  • 1

    首先,如图在浏览页面内有一个img标签,id为my-bigimg。稍后将实现这个图片/或者div盒子的拖拽移动。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 2

    首先,可以用jQuery给这个控件添加load处理函数,在这个img图片已经载入后,进行参数初始化,和其它事件的添加。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 3

    在load处理函数内,首先根据id获取要被拖动的标签,用变量drag保存,在这里,是img标签所在div盒子。Vq5办公区 - 实用经验教程分享!

    用变量isdown记录鼠标按下情况,用diffX和diffY记录点击位置在控件内的偏移量。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 3
  • 4

    接下来,给drag标签的onmousedown鼠标按下添加处理函数,记录偏移并且设置按下为true。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 5

    然后,在document的onmousemove鼠标移动添加处理函数,如果isDown==false直接返回,否则,计算移动位置,移动。其中的if判断保证控件不被拖出页面外。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 6

    接着在document的onmouseup鼠标抬起添加处理函数,设置isDown为false。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 7

    另外,由于img标签的图片自带拖动效果,为了保证正常拖动,需要禁用img标签的默认效果。如图使用preventDefault()实现。Vq5办公区 - 实用经验教程分享!

    html/javascript 如何实现标签拖拽移动?Vq5办公区 - 实用经验教程分享!

  • 注意事项

    • 注意,mousedown是在drag待拖动标签,mousemove和mouseup是在document上。

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!Vq5办公区 - 实用经验教程分享!


    标签: HTMLJAVASCRIPT

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号