爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
JS特效
记录鼠标运行轨迹,拖动放开时,图层会自动寻找轨迹归位
记录鼠标运行轨迹,拖动放开时,图层会自动寻找轨迹归位
日期:2014-05-18 浏览次数:20204 次
以下是程序代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>拖动_轨迹运行</title> <style type="text/css"> * {margin:0px;padding:0px;} #div1 {position:relative;left:200px;top:200px;width:100px; height:100px; background-color:#f60;cursor:move;} </style> <script type="text/javascript"> var isIE = (document.all)?true:false; var $ID = function(id){ return "string"==typeof id?document.getElementById(id):id; } var Class = { create:function(){ return function(){ this.initilize.apply(this,arguments); } } } var Extend = function(destination, source){ for(var property in source){ destination[property] = source[property]; } } var Bind = function(object,fun){ var args = Array.prototype.slice.call(arguments).slice(2); return function(){ return fun.apply(object,args); } } var BindAsEventListener = function(object,fun){ var args = Array.prototype.slice.call(arguments).slice(2); return function(event){ return fun.apply(object,[event||window.event].concat(args)); } } function addEventHandler(oTarget, sEventType, fnHandler) { if (oTarget.addEventListener) { oTarget.addEventListener(sEventType, fnHandler, false); } else if (oTarget.attachEvent) { oTarget.attachEvent("on" + sEventType, fnHandler); } else { oTarget["on" + sEventType] = fnHandler; } }; function removeEventHandler(oTarget, sEventType, fnHandler) { if (oTarget.removeEventListener) { oTarget.removeEventListener(sEventType, fnHandler, false); } else if (oTarget.detachEvent) { oTarget.detachEvent("on" + sEventType, fnHandler); } else { oTarget["on" + sEventType] = null; } }; function getNodePosition(node,type){//type="left"or"top" var nodeTemp = node; var l = 0; var t = 0; while(nodeTemp!=document.body&&nodeTemp!=null){ l += nodeTemp.offsetLeft; t += nodeTemp.offsetTop; nodeTemp = nodeTemp.offsetParent; } if(type.toLowerCase()=="left") return l; else return t; } //前面通常都用一个base.js封装 </script> <script type="text/javascript"> var MyDrag = Class.create(); MyDrag.prototype = { initilize:function(obj){ this.Obj = $ID(obj); this._x = this._y = 0; this._xx = this._yy = 0;//Move记录坐标 this.Obj.style.position = "absolute"; this._pos = []; this._ifSavePos = true; this._t = null; this._speed = 10; this._indexMove = 0;//全局的MoveIndex this._fnStart = BindAsEventListener(this,this.Start); this._fnMove = BindAsEventListener(this,this.Move); this._fnStop = Bind(this,this.Stop); addEventHandler(this.Obj,"mousedown",this._fnStart); }, Start:function(oEvent){ if(!this._ifSavePos) this._pos = []; this.Drag = this.Obj.cloneNode(true); if(isIE) this.Drag.style.filter = "alpha(opacity=50)"; else this.Drag.style.opacity = "0.5"; this.Obj.parentNode.appendChild(this.Drag); this._left1 = this._xx = getNodePosition(this.Obj,"left"); this._top1 = this._yy = getNodePosition(this.Obj,"top"); this._x = oEvent.clientX - this.Obj.offsetLeft; this._y = oEvent.clientY - this.Obj.offsetTop; addEventHandler(document,"mousemove",this._fnMove); addEventHandler(document,"mouseup",this._fnStop); this._t = setInterval(Bind(this,this.SavePos),10); }, SavePos:function(){//记录坐标点 this._pos.push(this._xx + "_" + this._yy); }, Move:function(oE
上一篇:狡猾的按钮特效
下一篇:鼠标滑过图层或图片时,显示TITLE标题提示特效
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
屌丝程序猿发家机会来了 用大数据来做生意!
华为任正非:家族成员不会成为接班人
在线音乐出现“小米公司”不是没有可能
传陌陌或12月赴美IPO 估值约30亿美元
王建宙解构OTT效劳 中移动重塑飞信平台
雅安地震救灾前线的科技之手 微弱而暖和
顺丰O2O便利店将正式启动:涉及金融服务
摩托罗拉移动裁员关闭德州Moto X手机工厂
京东物流"最后一公里":颠覆阿里或者被阿里干掉
推荐阅读
更多>
喜大普奔:2016年国内乘客有望在飞机上使用手机
在线音乐出现“小米公司”不是没有可能
空气污染器市场乱象丛生 选购需慎重
玩游戏式的趣味戒烟App:Kwit
Docker Desktop 4.11 发布:支持虚拟桌面、Mac 权限更改和新扩展
高通拼抢国际芯片市场 联发科海外拓展难安心
微软张亚勤趋势判断:未来三十年属于物理化互联网
传苹果已告知鸿海:两款新iPhone下月发货
诺基亚依托规模效应 猛攻国际市场空白
京东很忙:升服务推产品更新招股书 能赶在阿里前上市?
诺基亚若没加入微软,只不过是另一个HTC而已
中方抗议美方限购IT设备 紧张关系加剧
“世界杯+618”集体磨刀的本质是绑架全民
携程收买酷讯成定局:转型互联网+投资
“宽带中国”计划已正式上升为国家战略
三星手机在国内陷入困境:华为中兴小米紧追
唯品会荣登“最贵中概股”的欢喜与哀愁
FB上广告费用昂贵而且效果不及Twitter
全球五大电信设备商业绩:华为净利居首
黑莓高管:黑莓能作为家“小众公司”活下来