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 相关文章推荐
jQuery Tab插件 用于在Tab中显示iframe,附源码和详细说明
Jun 27 Javascript
js和php如何获取当前url的内容
Sep 22 Javascript
jQuery中nextAll()方法用法实例
Jan 07 Javascript
JavaScript 继承详解(五)
Oct 11 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
Apr 25 Javascript
详解vue数据渲染出现闪烁问题
Jun 29 Javascript
Vue.js列表渲染绑定jQuery插件的正确姿势
Jun 29 jQuery
js+html5 canvas实现ps钢笔抠图
Apr 28 Javascript
微信小程序云开发之数据库操作
May 18 Javascript
详解如何提升JSON.stringify()的性能
Jun 12 Javascript
js+canvas实现简单扫雷小游戏
Jan 22 Javascript
vue实现购物车结算功能
Jun 18 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
Zerg剧情介绍
2020/03/14 星际争霸
PHP中is_file()函数使用指南
2015/05/08 PHP
详解jQuery插件开发中的extend方法
2013/11/19 Javascript
jQuery实现ichat在线客服插件
2014/12/29 Javascript
JQuery.validationEngine表单验证插件(推荐)
2016/12/10 Javascript
jQuery实现鼠标跟随效果
2017/02/20 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
JavaScript严格模式下关于this的几种指向详解
2017/07/12 Javascript
关于定制FileField中的上传文件名称问题
2017/08/22 Javascript
Vue数据双向绑定的深入探究
2018/11/27 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
2019/05/03 Javascript
Vue Element UI + OSS实现上传文件功能
2019/07/31 Javascript
js DOM的事件常见操作实例详解
2019/12/16 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
Webpack中SplitChunksPlugin 配置参数详解
2020/03/24 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
Python的Flask框架中Flask-Admin库的简单入门指引
2015/04/07 Python
python获取指定路径下所有指定后缀文件的方法
2015/05/26 Python
微信跳一跳辅助python代码实现
2018/01/05 Python
python读取中文txt文本的方法
2018/04/12 Python
python通过文本在一个图中画多条线的实例
2020/02/21 Python
PyQt5中QTableWidget如何弹出菜单的示例代码
2020/02/23 Python
详解HTML5之pushstate、popstate操作history,无刷新改变当前url
2017/03/15 HTML / CSS
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
C++如何引用一个已经定义过的全局变量
2014/08/25 面试题
宣传策划类求职信范文
2014/01/31 职场文书
幼儿园教学随笔感言
2014/02/23 职场文书
爱与责任演讲稿
2014/05/20 职场文书
计生专干事迹
2014/05/28 职场文书
初中国旗下的演讲稿
2014/08/28 职场文书
纪律教育学习心得体会
2014/09/02 职场文书
2014年最新党员对照检查材料汇总
2014/09/15 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
南京导游词
2015/02/03 职场文书
详解MySQL 用户权限管理
2021/04/20 MySQL
SpringBoot集成Redis的思路详解
2021/10/16 Redis