jquery实现div拖拽宽度示例代码


Posted in Javascript onJuly 31, 2013

本例是个非常简单的div拖动,有需要的朋友可根据自己的需求,添加相应的代码。欢迎拍砖

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html style="height:100%;"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>div width resize</title> 
<!--引用jquery--> 
<script src="http://code.jquery.com/jquery-1.8.0.min.js" 
type="text/javascript"></script> 
<script type="text/javascript"> 
function bindResize(el) 
{ 
//初始化参数 
var els = document.getElementById('menu').style; 
//鼠标的 X 和 Y 轴坐标 
x = 0; 
//邪恶的食指 
$(el).mousedown(function (e) 
{ 
//按下元素后,计算当前鼠标与对象计算后的坐标 
x = e.clientX - el.offsetWidth - $("#menu").width(); 
//在支持 setCapture 做些东东 
el.setCapture ? ( 
//捕捉焦点 
el.setCapture(), 
//设置事件 
el.onmousemove = function (ev) 
{ 
mouseMove(ev || event); 
}, 
el.onmouseup = mouseUp 
) : ( 
//绑定事件 
$(document).bind("mousemove", mouseMove).bind("mouseup", mouseUp) 
); 
//防止默认事件发生 
e.preventDefault(); 
}); 
//移动事件 
function mouseMove(e) 
{ 
//宇宙超级无敌运算中... 
els.width = e.clientX - x + 'px'; 
} 
//停止事件 
function mouseUp() 
{ 
//在支持 releaseCapture 做些东东 
el.releaseCapture ? ( 
//释放焦点 
el.releaseCapture(), 
//移除事件 
el.onmousemove = el.onmouseup = null 
) : ( 
//卸载事件 
$(document).unbind("mousemove", mouseMove).unbind("mouseup", mouseUp) 
); 
} 
} 
var divResize=function(){ 
var totalHeight=$("html").height(); 
console.log(totalHeight); 
var topHeight=$("#top").height() 
$("#menu").height(totalHeight-topHeight); 
$("#rightbar").height(totalHeight-topHeight); 
} 
$(function() { 
divResize(); 
$(window).resize(divResize); bindResize(document.getElementById('rightbar')); 
}); 
</script> 
<style type="text/css"> 
.content { 
width: 200px; 
background: #f1f1f1; 
text-align: center; 
border-color: #CCCCCC; 
border-style: solid; 
border-width: 0 1px; 
} 
</style> 
</head> 
<body style="padding: 0; margin: 0;"> 
<%-- 
<table style="height: 100%"> 
<tr> 
<td id="menu" class="content"></td> 
<td id="rightbar" 
style="width: 2px; background: #cccccc; cursor: e-resize;"></td> 
</tr> 
</table> 
--%> 
<div> 
<div id="top" style="width: 100%; height: 80px;"></div> 
<div style="float: left;" id="menu" class="content"> 
<span>待拖拽的div</span> 
</div> 
<div id="rightbar" 
style="width: 2px; background: #cccccc; cursor: e-resize; float: left;"></div> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
jQuery 核心函数以及jQuery对象
Mar 23 Javascript
预加载css或javascript的js代码
Apr 23 Javascript
javascript与webservice的通信实现代码
Dec 25 Javascript
JavaScript中如何通过arguments对象实现对象的重载
May 12 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
Aug 24 Javascript
js实现省市级联效果分享
Aug 10 Javascript
微信小程序实现滴滴导航tab切换效果
Jul 24 Javascript
微信小程序实现顶部下拉菜单栏
Nov 04 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
Dec 09 Javascript
webpack4 SplitChunks实现代码分隔详解
May 23 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
Jul 28 Javascript
JS实现按比例缩小图片宽高
Aug 24 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
Jul 31 #Javascript
javascript获取下拉列表框当中的文本值示例代码
Jul 31 #Javascript
禁用页面部分JavaScript方法的具体实现
Jul 31 #Javascript
jquery 单引号和双引号的区别及使用注意
Jul 31 #Javascript
选择器中含有空格在使用示例及注意事项
Jul 31 #Javascript
在表单提交前进行验证的几种方式整理
Jul 31 #Javascript
cookie.js 加载顺序问题怎么才有效
Jul 31 #Javascript
You might like
如何使用PHP实现javascript的escape和unescape函数
2013/06/29 PHP
PHP中SimpleXML函数用法分析
2014/11/26 PHP
深入剖析PHP中printf()函数格式化使用
2016/05/23 PHP
Zend Framework校验器Zend_Validate用法详解
2016/12/09 PHP
服务器安全设置的几个注册表设置
2007/07/28 Javascript
JS实现图片预加载无需等待
2012/12/21 Javascript
String.prototype实现的一些javascript函数介绍
2013/11/22 Javascript
纯js写的分页表格数据为json串
2014/02/18 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
ztree实现权限横向显示功能
2017/05/20 Javascript
随机生成10个不重复的0-100的数字(实例讲解)
2017/08/16 Javascript
vue生命周期和react生命周期对比【推荐】
2018/09/19 Javascript
vue拖拽组件使用方法详解
2018/12/01 Javascript
mpvue 单文件页面配置详解
2018/12/02 Javascript
JS实现在线ps功能详解
2019/07/31 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
Python中暂存上传图片的方法
2015/02/18 Python
python实现稀疏矩阵示例代码
2017/06/09 Python
Python进程间通信之共享内存详解
2017/10/30 Python
django静态文件加载的方法
2018/05/20 Python
Python把对应格式的csv文件转换成字典类型存储脚本的方法
2019/02/12 Python
如何通过Python实现标签云算法
2019/07/02 Python
Python逐行读取文件内容的方法总结
2020/02/14 Python
Python基础之列表常见操作经典实例详解
2020/02/26 Python
Python如何批量获取文件夹的大小并保存
2020/03/31 Python
Python用access判断文件是否被占用的实例方法
2020/12/17 Python
canvas粒子动画背景的实现示例
2018/09/03 HTML / CSS
AmazeUI中各种的导航式菜单与解决方法
2020/08/19 HTML / CSS
HashMap和Hashtable的区别
2013/05/18 面试题
迟到检讨书500字
2014/02/05 职场文书
社区道德讲堂实施方案
2014/03/21 职场文书
授权委托书怎么写
2014/04/03 职场文书
辞职信如何写
2015/02/27 职场文书
Java常用函数式接口总结
2021/06/29 Java/Android