javascript弹出拖动窗口


Posted in Javascript onAugust 11, 2015

可以拖动的弹出窗口,在很多网页上都可以见到,非常的人性化,下面通过一段javascript代码就可以实现弹出拖动窗口,废话不多说了,直接贴代码了。

<!DOCTYPE html> 
<html> 
<head> 
<meta charset=" utf-8"> 
<meta name="author" content="https://3water.com/" />
<title>可以拖动的弹出窗口</title> 
<style type="text/css"> 
#popDiv 
{ 
 position:absolute; 
 visibility:hidden; 
 overflow:hidden; 
 border:2px solid #AEBBCA; 
 background-color:#EEF1F8; 
 cursor:move; 
 padding:1px; 
} 
#popTitle 
{ 
 background:#9DACBF; 
 height:20px; 
 line-height:20px; 
 padding:1px; 
} 
#popForm 
{ 
 padding:2px; 
} 
.title_left 
{ 
 font-weight:bold; 
 padding-left:5px; 
 float:left; 
} 
.title_right 
{ 
 float:right; 
} 
#popTitle .title_right a 
{ 
 color:#000; 
 text-decoration:none; 
} 
#popTitle .title_right a:hover 
{ 
 text-decoration:underline; 
 color:#FF0000; 
} 
</style> 
<script> 
function showPopup() //弹出层 
{ 
 var objDiv=document.getElementById("popDiv"); 
 objDiv.style.top="50px";//设置弹出层距离上边界的距离 
 objDiv.style.left="200px";//设置弹出层距离左边界的距离 
 objDiv.style.width="300px";//设置弹出层的宽度 
 objDiv.style.height="200px";//设置弹出层的高度 
 objDiv.style.visibility="visible"; 
} 
function hidePopup()//关闭层 
{ 
 var objDiv=document.getElementById("popDiv"); 
 objDiv.style.visibility="hidden"; 
} 
</script> 
</head> 
<body> 
<div id="popDiv"> 
 <div id="popTitle"> <!-- 标题div -->
 <span class="title_left">修改操作</span> 
 <span class="title_right" onClick="hidePopup()"><a href="#">关闭</a></span> 
 </div> 
 <div id="popForm"></div> 
</div> 
<input name="" type="button" onClick="showPopup()" value="操作" /> 
<script type="text/javascript"> 
var objDiv=document.getElementById("popDiv"); 
var isIE=document.all?true:false;//判断浏览器类型 
document.onmousedown = function(evnt)//当鼠标左键按下后执行此函数 
{ 
 var evnt=evnt?evnt:event; 
 if(evnt.button == (document.all ? 1 : 0)) 
 { 
 mouseD = true;//mouseD为鼠标左键状态标志,为true时表示左键被按下 
 } 
} 
objDiv.onmousedown = function(evnt) 
{ 
 objDrag=this;//objDrag为拖动的对象 
 var evnt=evnt?evnt:event; 
 if(evnt.button == (document.all?1 : 0)) 
 { 
 mx=evnt.clientX; 
 my=evnt.clientY; 
 objDiv.style.left=objDiv.offsetLeft+"px"; 
 objDiv.style.top=objDiv.offsetTop+"px"; 
 if(isIE) 
 { 
  objDiv.setCapture(); 
 } 
 else 
 { 
  window.captureEvents(Event.MOUSEMOVE); 
 } 
 } 
} 
document.onmouseup=function() 
{ 
 mouseD=false; 
 objDrag=""; 
 if(isIE) 
 { 
 objDiv.releaseCapture(); 
 } 
 else 
 { 
 window.releaseEvents(objDiv.MOUSEMOVE); 
 } 
} 
document.onmousemove=function(evnt) 
{ 
 var evnt=evnt?evnt:event; 
 if(mouseD==true&&objDrag) 
 { 
 var mrx=evnt.clientX-mx; 
 var mry=evnt.clientY-my; 
 objDiv.style.left = parseInt(objDiv.style.left) + mrx + "px"; 
 objDiv.style.top = parseInt(objDiv.style.top) + mry + "px"; 
 mx = evnt.clientX; 
 my = evnt.clientY; 
 } 
} 
</script> 
</body> 
</html>

以上是本文实现javascript弹出拖动窗口的全部内容,希望对大家有所帮助。

Javascript 相关文章推荐
gridpanel动态加载数据的实例代码
Jul 18 Javascript
原生JS实现加入收藏夹的代码
Oct 24 Javascript
jquery复选框checkbox实现删除前判断
Apr 20 Javascript
详解AngularJS中的表达式使用
Jun 16 Javascript
基于jquery实现一个滚动的分步注册向导-附源码
Aug 26 Javascript
Javascript 计算字符串在localStorage中所占字节数
Oct 21 Javascript
用AngularJS来实现监察表单按钮的禁用效果
Nov 02 Javascript
javascript动画系列之模拟滚动条
Dec 13 Javascript
移动端利用H5实现压缩图片上传功能
Mar 29 Javascript
JS实现基于拖拽改变物体大小的方法
Jan 23 Javascript
js实现贪吃蛇小游戏(加墙)
Jul 31 Javascript
js实现贪吃蛇游戏 canvas绘制地图
Sep 09 Javascript
jquery.fastLiveFilter.js实现输入自动过滤的方法
Aug 11 #Javascript
javascript实现五星评价代码(源码下载)
Aug 11 #Javascript
jQuery的remove()方法使用详解
Aug 11 #Javascript
jquery实现点击展开列表同时隐藏其他列表
Aug 10 #Javascript
jquery实现Li滚动时滚动条自动添加样式的方法
Aug 10 #Javascript
jQuery右下角旋转环状菜单特效代码
Aug 10 #Javascript
jquery实现滑动特效代码
Aug 10 #Javascript
You might like
php删除文件夹及其文件夹下所有文件的函数代码
2013/01/23 PHP
PHP限制页面只能在微信自带浏览器访问的代码
2014/01/15 PHP
php中http与https跨域共享session的解决方法
2014/12/20 PHP
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
实例讲解php数据访问
2016/05/09 PHP
ThinkPHP防止重复提交表单的方法实例分析
2018/05/10 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
2019/08/03 PHP
Javascript图像处理—为矩阵添加常用方法
2012/12/27 Javascript
JavaScript创建一个欢迎cookie弹出窗实现代码
2013/03/15 Javascript
从js向Action传中文参数出现乱码问题的解决方法
2013/12/29 Javascript
JavaScript框架(iframe)操作总结
2014/04/16 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
jQuery焦点图插件SaySlide
2015/12/21 Javascript
使用jquery提交form表单并自定义action的方法
2016/05/25 Javascript
JS判断日期格式是否合法的简单实例
2016/07/11 Javascript
浅谈toLowerCase和toLocaleLowerCase的区别
2016/08/15 Javascript
Angular获取手机验证码实现移动端登录注册功能
2017/05/17 Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
2017/06/13 Javascript
面试题:react和vue的区别分析
2019/04/08 Javascript
Python日志模块logging简介
2015/04/13 Python
Python使用PIL模块生成随机验证码
2017/11/21 Python
Python实现冒泡排序的简单应用示例
2017/12/11 Python
python实现代码统计程序
2019/09/19 Python
如何在 Django 模板中输出 &quot;{{&quot;
2020/01/24 Python
idea2020手动安装python插件的实现方法
2020/07/17 Python
css3 flex实现div内容水平垂直居中的几种方法
2020/03/27 HTML / CSS
国际贸易专业个人鉴定
2014/02/22 职场文书
法学求职信
2014/06/22 职场文书
2014年党员自我评议(5篇)
2014/09/12 职场文书
情侣之间的道歉短信
2015/05/12 职场文书
公共场所卫生管理制度
2015/08/05 职场文书
日本读研:怎样写好一篇日本研究计划书?
2019/07/15 职场文书
Windows11性能真的上涨35%? 桌面酷睿i9实测结果公开
2021/11/21 数码科技
python文件与路径操作神器 pathlib
2022/04/01 Python
Java 超详细讲解ThreadLocal类的使用
2022/04/07 Java/Android