js实现鼠标拖拽缩放div实例代码


Posted in Javascript onMarch 25, 2019

封装为了jq插件,如下

drag.js

;(function ($) {
 $.fn.dragDiv = function (options) {
  var def = {
   maxW:600,// 可伸缩的最大宽度
   minW:50// 可伸缩的最小宽度
  };// 参数默认值
  var opts = $.extend(def,options);// 扩展参数,使用默认值或传参
  //设置最大/最小宽度
  var max_width = opts.maxW,
   min_width = opts.minW;
 
  //记录鼠标相对left盒子x轴位置
  var mouse_x = 0;
  var left = $(this).parent('div')[0];
 
  //鼠标移动事件
  function mouseMove(e) {
   var e = e || window.event;
   var left_width = e.clientX - mouse_x;// 可伸缩div的宽度
   left_width = left_width < min_width ? min_width : left_width;
   left_width = left_width > max_width ? max_width : left_width;
   left.style.width = left_width + "px";
  }
  //终止事件
  function mouseUp() {
   document.onmousemove = null;
   document.onmouseup = null;
  }
  $(this).mousedown(function (e) {
   var e = e || window.event;
   //阻止默认事件
   e.preventDefault();
   mouse_x = e.clientX - left.offsetWidth;// 可伸缩div距离左侧边界的宽度
   document.onmousemove = function () {
    mouseMove()
   };
   document.onmouseup = function () {
    mouseUp()
   };
  })
 }
})(jQuery)

html文件

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport"
   content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>鼠标进行伸缩div</title>
 <style>
  * {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
  }
  .dragdom {
   background: #cccccc;
   width: 100px;
   height: 600px;
   margin: 0 auto;
   position: relative;
  }
  .dragdom .drag {
   border: 1px transparent solid;
   width: 0px;
   height: 100%;
   position: absolute;
   top: 0;
   right: 0;
   cursor: e-resize;
  }
 </style>
</head>
<body>
<div class="dragdom"><div class="drag"></div></div>
</body>
</html>
<script type="text/javascript" src="./jquery.min.js"></script>
<script type="text/javascript" src="./drag.js"></script>
<script>
 $(function () {
  $('.drag').dragDiv();
 })
</script>

以上所述是小编给大家介绍的js实现鼠标拖拽缩放div详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
IE和FireFox(FF)中js和css的不同
Apr 13 Javascript
IE网页js语法错误2行字符1、FF中正常的解决方法
Sep 09 Javascript
javascript 小数取整简单实现方式
May 30 Javascript
JQUERY实现网页右下角固定位置展开关闭特效的方法
Jul 27 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
Sep 22 Javascript
快速学习AngularJs HTTP响应拦截器
Dec 31 Javascript
js验证真实姓名与身份证号,手机号的简单实例
Jul 18 Javascript
Jquery实现跨域异步上传文件总结
Feb 03 Javascript
浅谈mint-ui loadmore组件注意的问题
Nov 08 Javascript
微信小程序BindTap快速连续点击目标页面跳转多次问题处理
Apr 08 Javascript
详细介绍解决vue和jsp结合的方法
Feb 06 Javascript
js实现滑动滑块验证登录
Jul 24 Javascript
Vue框架下引入ActiveX控件的问题解决
Mar 25 #Javascript
9102了,你还不会移动端真机调试吗
Mar 25 #Javascript
详解原生JS回到顶部
Mar 25 #Javascript
javascript验证form表单数据的案例详解
Mar 25 #Javascript
elementUI select组件默认选中效果实现的方法
Mar 25 #Javascript
详解javascript函数写法大全
Mar 25 #Javascript
vue在自定义组件中使用v-model进行数据绑定的方法
Mar 25 #Javascript
You might like
PHP类的静态(static)方法和静态(static)变量使用介绍
2012/02/19 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
PHP编程计算两个时间段是否有交集的实现方法(不算边界重叠)
2017/05/30 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
laravel-admin的图片删除实例
2019/09/30 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
Cookie跨域问题解决方案代码示例
2020/11/24 PHP
Jquery AJAX 框架的使用方法
2009/11/03 Javascript
ajax java 实现自动完成功能
2012/12/19 Javascript
jquery右下角弹出提示框示例代码
2013/10/08 Javascript
利用HTML5的画布Canvas实现刮刮卡效果
2015/09/06 Javascript
JS转换HTML转义符的方法
2016/08/24 Javascript
bootstrap fileinput插件实现预览上传照片功能
2018/01/23 Javascript
详解Angular系列之变化检测(Change Detection)
2018/02/26 Javascript
react中fetch之cors跨域请求的实现方法
2018/03/14 Javascript
Vue 中mixin 的用法详解
2018/04/23 Javascript
实例详解vue中的$root和$parent
2019/04/29 Javascript
countup.js实现数字动态叠加效果
2019/10/17 Javascript
JS写滑稽笑脸运动效果
2020/05/28 Javascript
[02:49]DOTA2完美大师赛首日观众采访
2017/11/23 DOTA
在Python中关于中文编码问题的处理建议
2015/04/08 Python
python3.5使用tkinter制作记事本
2016/06/20 Python
TensorFlow saver指定变量的存取
2018/03/10 Python
Flask框架Flask-Principal基本用法实例分析
2018/07/23 Python
Python文件打开方式实例详解【a、a+、r+、w+区别】
2019/03/30 Python
python 插入日期数据到Oracle实例
2020/03/02 Python
pyqt5数据库使用详细教程(打包解决方案)
2020/03/25 Python
手把手教你将Flask应用封装成Docker服务的实现
2020/08/19 Python
英国IT硬件供应商,定制游戏PC:Mesh Computers
2019/03/28 全球购物
租车协议书范本
2014/04/22 职场文书
初中学校军训方案
2014/05/09 职场文书
记账会计岗位职责
2014/06/16 职场文书
会议新闻稿
2015/07/17 职场文书
2016年春季运动会加油稿
2015/07/22 职场文书
2015年“我们的节日·中秋节”活动总结
2015/07/30 职场文书
Go归并排序算法的实现方法
2022/04/06 Golang