JS实现拖拽改变物体大小

拖拽改变物体大小,本文主要介绍了js实现基于拖拽改变物体大小的方法,涉及javascript事件响应及页面元素属性动态操作相关实现技巧,需要的朋友可以参考下,希望能帮助到大家。

本文实例讲述了JS实现基于拖拽改变物体大小的方法。分享给大家供大家参考,具体如下:

拖拽改变物体大小功能:拖拽黄色小p来改变绿色大p的宽和高

JS实现拖拽改变物体大小

主要实现由三大步:

1. 通过id获取到大小两个p
2. 给小p添加onmousedown事件
3. 在onmousedown事件给document添加onmousemove和onmouseup事件

JS实现拖拽改变物体大小

由分析图可知,我们只需要在拖拽的时候,获取到物体不断增加的宽度值,问题就解决了

  

登录后复制

加些样式

    #panel{      position: absolute;      width: 200px;height: 200px;      background: green;    }    #dragIcon{      position: absolute;bottom: 0;right: 0;      width: 20px;height: 20px;      background: yellow;    }

登录后复制

js实现代码:

  window.onload = function () {    // 1. 获取两个大小p    var oPanel = document.getElementById('panel');    var oDragIcon = document.getElementById('dragIcon');    // 定义4个变量    var disX = 0;//鼠标按下时光标的X值    var disY = 0;//鼠标按下时光标的Y值    var disW = 0; //拖拽前p的宽    var disH = 0; // 拖拽前p的高    //3. 给小p加点击事件    oDragIcon.onmousedown = function (ev) {      var ev = ev || window.event;      disX = ev.clientX; // 获取鼠标按下时光标x的值      disY = ev.clientY; // 获取鼠标按下时光标Y的值      disW = oPanel.offsetWidth; // 获取拖拽前p的宽      disH = oPanel.offsetHeight; // 获取拖拽前p的高      document.onmousemove = function (ev) {        var ev = ev || window.event;        //拖拽时为了对宽和高 限制一下范围,定义两个变量        var W = ev.clientX - disX + disW;        var H = ev.clientY - disY + disH;        if(W800){          W =800;        }        if(H500){          H = 500;        }        oPanel.style.width =W +'px';// 拖拽后物体的宽        oPanel.style.height = H +'px';// 拖拽后物体的高      }      document.onmouseup = function () {        document.onmousemove = null;        document.onmouseup = null;      }    }  }

登录后复制

效果图:

JS实现拖拽改变物体大小

相关推荐:

textarea布局时文字在左下边且不能改变大小尺寸的解决

HTML中 table鼠标拖拽排序功能的实现

JavaScript鼠标拖拽事件实现的案例

以上就是JS实现拖拽改变物体大小的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2789316.html

(0)
上一篇 2025年3月8日 18:41:20
下一篇 2025年3月8日 18:41:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论