<html>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"></meta>
<title>拖拽图层</title>
<header>
<script>
function getStyle(o,key){return o.currentStyle? o.currentStyle[key] : document.defaultView.getComputedStyle(o,null)[key]}//'currentStyle' only for ie5.0+
var drag = function(bar, target){
var params = {
startLeft:0,
startTop:0,
_X:0,
_Y:0,
isDrag:false
};
if(getStyle(target,'left') != 'auto'){params.startLeft = getStyle(target,'left')}
if(getStyle(target,'top') != 'auto'){params.startTop = getStyle(target,'top')}
bar.onmousedown = function(e){
e = e?e:window.event; //'event' ie下局部变量,ff下全局变量
params.isDrag = true;
params._X = e.clientX; params._Y = e.clientY;
};
document.onmouseup = function(){
params.isDrag = false;
if(getStyle(target,'left') != 'auto'){params.startLeft = getStyle(target,'left')}
if(getStyle(target,'top') != 'auto'){params.startTop = getStyle(target,'top')}
};
document.onmousemove = function(e){
var e = e?e:window.event;
if(params.isDrag){
var curX = e.clientX, curY = e.clientY, desL = curX-params._X+parseInt(params.startLeft), desT = curY-params._Y+parseInt(params.startTop);
target.style['left'] = desL>=0?desL + 'px':0;
target.style['top'] = desT>=0?desT + 'px':0;
}
}
};
function test(){
document.getElementById('mybox').style.display='block';
var bar = document.getElementById('mybar'), tar = document.getElementById('mybox');
//alert(getStyle(bar, 'display'));
drag(bar,tar);
}
</script>
</header>
<body>
<div id="mybox" class="shadow" style="position: absolute; border: 4px solid #ccc; left: 300px; top: 10px; box-shadow: 3px 3px 4px #666; display: none;">
<div id="mybar" style="line-height: 24px; padding-left: 10px; background: #eee; border-bottom: 1px solid #ccc; cursor: move;">拖我试试...</div>
<div style="height: 150px; width: 250px; background: #fefefe;">content...</div>
</div>
<a onclick="test()" href="javascript:;">打开</a>
</body>
</html>
分享到:
相关推荐
在asp.net中实现的一个可拖动div可以替换不美观的alert
可拖动div边框改变大小的方法,jquery拖拽改变div大小效果,。。。。。。。。。。。。。。。。。。。。。。。。。
可拖动div 弹窗 esc关闭 锁屏 代码是入门级的
Jquery弹出可拖动Div模态层源码 源码描述: 技术特点:JQUERY和标签的完美结合 功能描述: jquery弹可拖动的Div模态层,可导入指定页面并做特定处理, 能实现子窗体传值给父窗体控件
Javascript实现的交互式Div,Div随用户拖动而移动位置。
可拖动的div页面,可以做网站主页等页面
现在切入正题,说一下js 实现可拖动Div.实现这个功能我们先说一下思路: 1.捕捉鼠标div的mousedown事件 2.捕捉 document的 mousemove事件 3.取消事件 然后我们看一下代码: 代码如下:function Drag(id) {...
NULL 博文链接:https://shanshandaocao-163-com.iteye.com/blog/754312
可以拖动的div,还有坐标,快进后退按钮
js拖动div并拖动DIV的大小,js拖动div并拖动DIV的大小
NULL 博文链接:https://linshiquan.iteye.com/blog/292086
基于JQuery的div层窗口,可拖动,可设置大小,兼容IE、遨游和火狐等主流浏览器。附带例子、JQuery文件,注意使用时必须引入dialog.css, 具体用法参照例子。超好使
主要介绍了jquery实现可拖动DIV自定义保存到数据,有需要的朋友可以参考一下
div 拖动 div 拖动 div 拖动 div 拖动 div 拖动 div 拖动
NULL 博文链接:https://happysoul.iteye.com/blog/591785
基于jQuery可拖动的div,Demo,详细页面,有注释。
DIV 拖动 JS移动DIV DIV位置移动DIV 拖动 JS移动DIV DIV位置移动DIV 拖动 JS移动DIV DIV位置移动DIV 拖动 JS移动DIV DIV位置移动
纯js版本的拖动div 拉伸div 复用拖拽函数 复用改变大小函数
仿google拖动div 的应用仿google拖动div 的应用
.div{height:160px;width:160px;position:absolute; text-align:center; } .demo1{ border:1px solid #96C2F1;background-color:#EFF7FF;left:150px;top:20px} .demo2{ border:1px solid #9BDF70;background-color:#...