• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

可以拖拽的小窗口程序(javascript)_js

javascript 搞代码 7年前 (2018-06-13) 136次浏览 已收录 0个评论

首先介绍一下这个程序的一些相关事件和方法:

event.button:事件发生时表示鼠标的动作 如果为1则是鼠标左键 2为鼠标右键 不过现在好像MS都已经有8个值了 难道以后鼠标的发展方向是8个键?

parentNode:父节点

event.ClientX:事件发生时的鼠标x值

event.ClientY:事件发生时的鼠标Y值

setCapture()方法:建立对象和鼠标之间的通讯 也就是说鼠标作用在此对象上时才跟踪鼠标

http://www.gaodaima.com/27760.html

releaseCapture()方法:切断对象和鼠标之间的通讯

JavaScript程序如下:

 程序代码

<script>
var move=false;

function StartDrag(obj) //定义准备拖拽的函数
{
 if(event.button==1&&event.srcElement.tagName.toUpperCase()==”DIV”)//判断事件发生地点 防止无效拖拽
 {
  obj.setCapture(); //对当前对象的鼠标动作进行跟踪
  obj.style.background=”#999″; //改变颜色
  move=true;
  }
}

function Drag(obj) //定义拖拽函数
{
 if(move)
 {
  var oldwin=obj.parentNode; //定义父对象
  oldwin.style.left=event.clientX-50;//定义父对象目前位置
  oldwin.style.top=event.clientY-10;
 }
 
 }

function StopDrag(obj) //定义停止拖拽函数
{
  obj.style.background=”#000″; //改变颜色
  obj.releaseCapture(); //停止对当前对象的鼠标跟踪
  move=false;
  }

</script>

 

 

 HTML代码
<html>
<body>

<style>
body{font-family:Verdana;font-size:11px;color:#333;}
#win1{[position:absolute;left:100;top:100;width:200px;height:150px;border:1px solid #000;}
.title{width:100%;background:#000;height:18px;color:#fff;cursor:hand;} 
 </style>
 
<script>
var move=false; 
function StartDrag(obj)                      
{
 if(event.button==1&&event.srcElement.tagName.toUpperCase()==”DIV”)
 {
  obj.setCapture();
  obj.style.background=”#999″;
  move=true;
  } 
}

function Drag(obj)                  
{
 if(move)
 {
  var oldwin=obj.parentNode;
  oldwin.style.left=event.clientX-50;
  oldwin.style.top=event.clientY-10;
 }
 
 }

function StopDrag(obj)
{
  obj.style.background=”#000″;
  obj.releaseCapture();
  move=false;
  } 

</script> 

<div id=”win1″>
<div class=”title” onMousemove=”Drag(this)” >窗口1</div>
This is a moveable window.<br>
Moreinfo in http://www.achome.cn&nbsp; .
</div>

</body> 
</html

 
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

欢迎大家阅读《可以拖拽的小窗口程序(javascript)_js,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:可以拖拽的小窗口程序(javascript)_js

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址