爱易网
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 浏览次数:20166 次
以下是程序代码
<!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(oEv
上一篇:狡猾的按钮特效
下一篇:左中右三栏DIV高度自适应的一段脚本特效
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
电信资费新政:三巨头压力大 短期降价仍有争议
百度对糯米来说到底意味着什么?
传诺基亚5月14日发布会推出Lumia 950
公信力消失:马航事件社交媒体传播之痛
阿里入股虎嗅:媒体的脊梁弯了?未必!
马云的SNS之梦有了新目标 收购“微博”
永不磨灭的九大尖端编程语言
曹国伟:微博将关注Facebook和Twitter
十亿美元的告别礼:三星为何要大举重组?
推荐阅读
更多>
火一把就死: 百度魔图验证社交游戏衰亡宿命
新闻早8点》Facebook失手发布Snapchat类应用
途牛开盘价9美元 与发行价持平
眼球识别技术EyeVerify融资600万美元 360参投
阿里马云:我觉得互联网还有十年可以做
虚拟运营商们更像三大运营商的“二道贩子”
阿里巴巴450亿勾画“现代服务业”藏宝图
网络旅行游记被曝插入"软广告" 个别人士月入数万
京东确定IPO定价区间 最高募资16.9亿美元
天音通信170套餐试商用放号:流量两年不清零
苹果CEO抱歉解读:是战略而非“屈服”
微软最后的救命稻草Win 8份额继续上升
三星维修新规:Galaxy S4主板进水也收费修
挂号网高管团体离任 或因投资人失掉决计
诺基亚依托规模效应 猛攻国际市场空白
SAP高层调整:联席CEO孟鼎铭成唯一掌舵人
移动联通回应税率改革:短期内收入利润将大减
国美电商开打价钱战 牟贵先言行矛盾受质疑
网络音乐非片面收费 高晓松时间表难完成
揭秘:阿里巴巴“无人认领”的三成股权都归谁