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 相关文章推荐
说说掌握JavaScript语言的思想前提想学习js的朋友可以看看
Apr 01 Javascript
纯CSS打造的导航菜单(附jquery版)
Aug 07 Javascript
JS中setTimeout的巧妙用法前端函数节流
Mar 24 Javascript
第六章之辅组类与响应式工具
Apr 25 Javascript
jQuery插件实现文件上传功能(支持拖拽)
Aug 27 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
Aug 25 Javascript
利用Angularjs实现幻灯片效果
Sep 07 Javascript
使用Vuex实现一个笔记应用的方法
Mar 13 Javascript
react-navigation之动态修改title的内容
Sep 26 Javascript
详解iview的checkbox多选框全选时校验问题
Jun 10 Javascript
layui 弹出层值回传解决方式
Nov 14 Javascript
vue 单页应用和多页应用的优劣
Oct 22 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语法(1)
2006/10/09 PHP
PHP的类 功能齐全的发送邮件类
2006/10/09 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
2016/07/28 PHP
PHP中trait使用方法详细介绍
2017/05/21 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
laravel框架添加数据,显示数据,返回成功值的方法
2019/10/11 PHP
JavaScript 未结束的字符串常量常见解决方法
2010/01/24 Javascript
用jquery实现点击栏目背景色改变
2012/12/10 Javascript
jQuery中DOM操作实例分析
2015/01/23 Javascript
jQuery中使用each处理json数据
2015/04/23 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
JavaScript中实现map功能代码分享
2015/06/11 Javascript
JavaScript计划任务后台运行的方法
2015/12/18 Javascript
基于JavaScript实现网页倒计时自动跳转代码
2015/12/28 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
vue父子组件的通信方法(实例详解)
2019/11/10 Javascript
vue实现下载文件流完整前后端代码
2020/11/17 Vue.js
[01:10:57]Liquid vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python动态性强类型用法实例
2015/05/09 Python
Python Matplotlib库入门指南
2015/05/18 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
2015/05/22 Python
理解Python中的With语句
2016/03/18 Python
python查询文件夹下excel的sheet名代码实例
2019/04/02 Python
python用win32gui遍历窗口并设置窗口位置的方法
2019/07/26 Python
Python K最近邻从原理到实现的方法
2019/08/15 Python
Python中random模块常用方法的使用教程
2020/10/04 Python
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
个人简历的自荐信
2013/10/23 职场文书
离婚协议书范本样本
2014/08/19 职场文书
初二学生评语大全
2014/12/26 职场文书
实习科室评语
2015/01/04 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书
PHP解决高并发问题
2021/04/01 PHP
pandas求平均数和中位数的方法实例
2021/08/04 Python
面试中canvas绘制图片模糊图片问题处理
2022/03/13 Javascript