鼠标拖动面板

之前写过一篇关于form表单验证随笔,后来添加了一点点内容,使得可以使用鼠标将其拖动,为了完整性,还是写一遍随笔吧;加上这部分内容后,HTML和CSS部分,也进行了少量修改,这里就补贴修改后的代码了,仅仅将添加的JS部分贴出来:

首先是还是展示一下效果图吧:

点击注册,出现注册页面,这个就简单了:

//点击显示注册页面
$("regis").onclick = function() {
$(‘div‘).style.visibility = ‘visible‘;
}

然后添加的是鼠标拖曳事件,使用onmousedown,onmousemove,onmouseup事件:

 1 $("drag").onmousedown = function(e) {
 2         var e = e || window.event; //兼容浏览器
 3         disX = e.clientX - drag.offsetLeft; //获取鼠标在面板上的坐标
 4         disY = e.clientY - drag.offsetTop;
 5         $("drag").onmousemove = function(e) {
 6             var e = e || window.event;
 7             var X = e.clientX - disX; //鼠标拖曳面板时面板距页面左上角的坐标
 8             var Y = e.clientY - disY;
 9             var winW = document.documentElement.clientWidth || document.body.clientWidth; //获取页面宽高
10             var winH = document.documentElement.clientHeight || document.body.clientHeight;
11             var winW_max = winW - $("drag").offsetWidth; //获取面板在页面可运动的最大距离
12             var winH_max = winH - $("div").offsetHeight;
13             X = (X <= 0) ? 0 : X; //防止拖动到页面之外
14             X = (X > winW_max) ? winW_max : X;
15             Y = (Y <= 0) ? 0 : Y;
16             Y = (Y > winH_max) ? winH_max : Y;
17             $(‘div‘).style.left = X + ‘px‘;
18             $(‘div‘).style.top = Y + ‘px‘;
19         }
20         $("drag").onmouseup = function() { //鼠标抬起时,不能再移动
21             $("drag").onmousemove = null;
22             $("drag").onmouseup = null;
23         }
24     }
时间: 2024-12-23 23:05:05

鼠标拖动面板的相关文章

【ActionScript】利用复制影片duplicateMovieClip与鼠标拖动跟随startDrag做出鼠标移动特效

上次在<[ActionScript]ActionScript2.0的Helloworld>(点击打开链接)中介绍了ActionScript2.0的基本用法. 这次准备打算用复制影片duplicateMovieClip与鼠标拖动跟随startDrag做出如下图的鼠标移动特效: 一.准备工作 1.首先还是与上次上一样,新建一个ActionScript2.0的文件,然后先保存一下.之后,如下图所示,通过插入->新建元件,或者Ctrl+F8,在类型中选项图形,命名随意,新建一个图形元件. 2.之

前端之拖动面板

实现效果:鼠标悬浮鼠标指针变化,点击拖动 实现代码: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>拖动面板</title> 6 </head> 7 <body> 8 <div style="border: 1px solid red;widt

鼠标拖动虚影效果(拖动的时候使用图片蒙人,但效果不错)

疯狂delphi delphiXE7.XE8.XE10公开课A 群号:58592705 鼠标拖动虚影效果 1 //1.定义消息 2 procedure MYHideMessage(var Msg: tagMSG; var Handled: Boolean); 3 4 //2.执行消息 5 procedure TForm2.MYHideMessage(var Msg: tagMSG; var Handled: Boolean); 6 var 7 pt:TPoint; 8 bit: TBitmap;

jquery 鼠标拖动排序Li或Table

1.前端页面 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="拖动排序Li或Table.aspx.cs" Inherits="拖动排序Li或Table" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o

简单的鼠标拖动效果

使用js实现简单的鼠标拖动效果,但此部分代码有个小小的BUG,后期改进好我会写进来,但基本的效果已经实现,请大家参考. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>鼠标移动</title> <style> #box{ width: 50px; height: 50px; position:

js鼠标控制图片的特效,滚轮控制放大、缩小、鼠标拖动、聚焦。。。

项目需要做一个js控制图片的特效,滚轮控制放大.缩小.鼠标拖动等效果,网上找方法,各种报错.不兼容...最终自己研究出一套方案如下: 代码直接从项目中拷了,就不整理格式了 <script type="text/javascript"> //图片特效 by jifei_mei //图片大小,记录放大或缩小图片前的大小 var pic_size = { width:0, height:0 }; //绑定滚轮滚动事件 if (window.addEventListener) {

可是鼠标拖动的菜单

<html> <head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>阿里西西网页特效演示,可以拖动的显隐导航菜单</title><style>body,td,a {font-size:9pt;color:black}.none{border:black 1px solid;backgrou

禁用网页右键菜单和鼠标拖动选择

一.禁止鼠标右键菜单: 有如下两种方法来禁止鼠标右键 1.在HTML元素的Body标签中加入Javascript事件句柄,代码如下: <body onContextMenu="return false"> 说明:您也可以在网页指定的位置禁止右键,比如您只想在网页中的某个图片上禁右键防下载,或您只想在网页中的一段文字或表格上禁右键,您也只需将如上红色代码加入到相应的HTML标签元素中,例: <img src="logo.gif" width=88 h

jQuery实现鼠标拖动改变Div高度

最近项目中需要在DashBoard页面做一个事件通知栏,该通知栏固定位于页面底部,鼠标拖动该DIV实现自动改变高度扩展内容显示区域. 以下是一个设计原型,基于jQuery实现,只实现了拖动效果,没有做页面美化,可以根据需求做相应修改. 直接上代码 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quo