亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

js實現div拖動動畫運行軌跡效果代碼分享

2019-11-20 11:40:46
字體:
來源:轉載
供稿:網友

本文實例講述了js div拖動動畫運行軌跡效果。分享給大家供大家參考。具體如下:
這是一款基于js實現的div拖動動畫運行軌跡效果源碼,是一款原生js div拖動效果制作鼠標拖動div動畫運行軌跡效果代碼??梢赃x擇【記住軌跡】與【不記住軌跡】兩種拖動顯示模式,從而顯示出不同的拖動效果。
運行效果圖:                                        -------------------查看效果 下載源碼-------------------

小提示:瀏覽器中如果不能正常運行,可以嘗試切換瀏覽模式。
為大家分享的js div拖動動畫運行軌跡效果代碼如下

<!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=utf-8" /><title>js div拖動動畫運行軌跡效果代碼 - 武林網</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(oEvent){ if(isIE) oEvent.returnValue = false; this._xx = oEvent.clientX - this._x; this._yy = oEvent.clientY - this._y; this.Drag.style.left = this._xx + "px"; this.Drag.style.top = this._yy + "px"; }, Stop:function(){ removeEventHandler(document,"mousemove",this._fnMove); removeEventHandler(document,"mouseup",this._fnStop); this.Obj.parentNode.removeChild(this.Drag); this.Obj.style.left = this._xx + "px"; this.Obj.style.top = this._yy + "px"; clearInterval(this._t); this._fnCloneMove = Bind(this,this.CloneMove); this._t = setTimeout(this._fnCloneMove,50); }, CloneMove:function(){ if(this._indexMove<6){  new ObjMove({x1:this._left1,y1:this._top1,x2:this._xx,y2:this._yy,pos:this._pos});  this._indexMove++;  this._t = setTimeout(this._fnCloneMove,50); }else{  clearTimeout(this._t);  this._indexMove = 0; } }}var ObjMove = Class.create(); ObjMove.prototype = { initilize:function(options){ this.SetOptions(options); this.Obj = document.createElement("DIV"); this.Obj.style.cssText = "position:absolute;left:"+ this.options.x1 +"px;top:"+ this.options.y1 +"px;width:100px;height:100px;background-color:#f60;fliter:alpha(opacity=100);opacity:1;"; document.body.appendChild(this.Obj); this.Move2(); }, SetOptions: function(options) { this.options = {//默認值  x1:   0,  y1: 0,  x2: 0,  y2: 0,  pos: [] }; Extend(this.options, options || {}); }, Move2:function(){ this._indexMove = 0; this._fnMovePos = Bind(this,this.MovePos); this._t = setInterval(this._fnMovePos,10); }, MovePos:function(){ if(this._indexMove>=this.options.pos.length){  this.options.pos = [];  document.body.removeChild(this.Obj);  clearInterval(this._t); }else{  this.Obj.style.left = this.options.pos[this._indexMove].split("_")[0] + "px";  this.Obj.style.top = this.options.pos[this._indexMove].split("_")[1] + "px"; } this._indexMove++; }}onload = function(){ var myDrag = new MyDrag("div1"); $ID("rad1").onclick = function(){ myDrag._ifSavePos = true; } $ID("rad2").onclick = function(){ myDrag._ifSavePos = false; }}</script></head><body><center><br><div>隨意拖動那個小方塊幾秒鐘</div><br><label for="rad1"><input type="radio" id="rad1" name="rad" checked="checked"/>記住軌跡</label><label for="rad2"><input type="radio" id="rad2" name="rad"/>不記住軌跡</label><div id="div1"></div></center><div style="text-align:center;margin:50px 0; font:normal 14px/24px 'MicroSoft YaHei';"><p>適用瀏覽器:IE8、360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗. </p><p>來源:<a href="http://www.49028c.com/" target="_blank">武林網</a></p></div></body></html>


以上就是為大家分享的jQuery UI設置固定日期選擇代碼,希望大家可以喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
最近2019好看的中文字幕免费| 97avcom| 亚洲欧洲高清在线| 亚洲成人av片在线观看| 国产在线视频91| www国产精品com| 欧美日韩xxxxx| 中文字幕在线亚洲| 久久精品91久久久久久再现| 国产在线精品一区免费香蕉| 欧美精品少妇videofree| www国产91| 日韩精品免费一线在线观看| 亚洲欧美日韩区| 国产精欧美一区二区三区| 欧美国产视频日韩| 18一19gay欧美视频网站| 亚洲欧洲高清在线| 欧美成年人在线观看| 日本不卡视频在线播放| 97婷婷大伊香蕉精品视频| 国产精品成人一区二区三区吃奶| 国产精品福利在线观看网址| 黑丝美女久久久| 欧美一区二区大胆人体摄影专业网站| 精品国产电影一区| 欧美性猛交xxxx富婆| 最新69国产成人精品视频免费| 综合网日日天干夜夜久久| 国产成人av在线播放| 欧美在线精品免播放器视频| 欧美电影在线观看完整版| 久久精品视频一| 亚洲a∨日韩av高清在线观看| 国产精品99一区| 欧美亚洲国产视频小说| 亚洲欧美制服中文字幕| 亚洲欧洲国产精品| 久久成人国产精品| 国产精品自拍偷拍| 91久久精品国产91久久| 91亚洲精品久久久| 91探花福利精品国产自产在线| 中文国产亚洲喷潮| 亚洲自拍小视频免费观看| 久久国产色av| 红桃视频成人在线观看| 国产精品一区二区三区成人| 欧洲亚洲免费视频| 中文国产成人精品久久一| 日韩欧美在线免费观看| 国产精品美女www| 尤物99国产成人精品视频| 久久99视频免费| 欧美精品一二区| 欧美巨猛xxxx猛交黑人97人| 国产日韩欧美视频在线| 91国内在线视频| 欧美大片免费看| 国产日韩欧美在线| 黄色成人在线免费| 欧美中文在线免费| 91在线视频导航| 欧美视频一区二区三区…| 欧美在线视频一区二区| 97国产在线观看| 欧美午夜激情小视频| 一本色道久久88精品综合| 亚洲www在线观看| 亚洲白拍色综合图区| 九九九久久国产免费| 日本久久久久久| 日韩一区视频在线| 亚洲欧美中文字幕在线一区| 亚洲一区二区免费在线| 9.1国产丝袜在线观看| 午夜欧美不卡精品aaaaa| 最近2019好看的中文字幕免费| 久久伊人精品天天| 成人黄色大片在线免费观看| 久久精品99久久香蕉国产色戒| 在线播放国产一区中文字幕剧情欧美| 在线播放国产一区二区三区| 久久久亚洲欧洲日产国码aⅴ| 伊人久久久久久久久久| 亚洲精品91美女久久久久久久| 欧美视频在线免费看| 奇米4444一区二区三区| 亚洲免费小视频| 日韩精品极品在线观看播放免费视频| 国产亚洲视频在线| 国产成人久久精品| 国产视频久久久久久久| 久久精品在线视频| 色悠悠国产精品| 91av福利视频| 欧美日韩国产精品专区| 亚州av一区二区| 欧美极品少妇与黑人| 国产精品日韩一区| 国产精品久久久久久久久久久久久久| 97国产精品视频| 这里只有精品在线播放| 亚洲国产日韩一区| 最近2019年好看中文字幕视频| 亚洲精品久久7777777| 久久精品成人一区二区三区| 中文字幕欧美日韩在线| 久久久视频在线| 国产成人精品一区二区三区| 日韩精品在线第一页| 日韩免费视频在线观看| 亚洲91精品在线| 亚洲激情在线观看| 久久免费成人精品视频| 久久综合九色九九| 亚洲激情中文字幕| 亚洲国产精品成人一区二区| 日韩av免费看| 欧美做受高潮电影o| 91综合免费在线| 欧美日韩在线视频一区| 91香蕉国产在线观看| 亚洲国产成人精品女人久久久| 日韩中文字幕免费看| 国产精品视频成人| 亚洲sss综合天堂久久| 日韩中文字幕网站| 亚洲欧美国产一区二区三区| 欧美伦理91i| 国产女精品视频网站免费| 午夜精品99久久免费| 91精品啪在线观看麻豆免费| 欧美与欧洲交xxxx免费观看| 色综合久久天天综线观看| 91免费看片网站| 欧美性猛交xxx| 亚洲精品在线看| 国产精品美乳一区二区免费| 久久亚洲精品一区| 国产精品美女午夜av| 日韩高清欧美高清| 国产精品一区二区久久精品| 国产丝袜一区视频在线观看| 亚洲综合在线小说| 国产精品va在线播放| 亚洲香蕉av在线一区二区三区| 欧美亚洲另类视频| 在线亚洲午夜片av大片| 亚洲国产欧美精品| 国产男女猛烈无遮挡91| 日韩欧美成人免费视频| 欧美精品免费在线| 国产成人精品一区| 欧美视频二区36p| 91影视免费在线观看| 国产精品视频一区二区高潮| 国产精品爱久久久久久久| 欧美精品18videos性欧美| 亚洲毛茸茸少妇高潮呻吟| 欧美高清视频在线| 亚洲女人天堂成人av在线| 福利一区福利二区微拍刺激| 国产成人精品综合久久久|