页面实现拖动效果
drag(o,s)
drag(obj [,scroll]);
obj:对象的id或对象本身;
scroll(可选):对象是否随窗口拖动而滑动,默认为否鼠标右键查看源代码
- function drag(o,s)
- {
- if (typeof o == "string") o = document.getElementById(o);
- o.orig_x = parseInt(o.style.left) - document.body.scrollLeft;
- o.orig_y = parseInt(o.style.top) - document.body.scrollTop;
- o.orig_index = o.style.zIndex;
- o.onmousedown = function(a)
- {
- this.style.cursor = "move";
- this.style.zIndex = 10000;
- var d=document;
- if(!a)a=window.event;
- var x = a.clientX+d.body.scrollLeft-o.offsetLeft;
- var y = a.clientY+d.body.scrollTop-o.offsetTop;
- //author: www.longbill.cn
- d.ondragstart = "return false;"
- d.onselectstart = "return false;"
- d.onselect = "document.selection.empty();"
- if(o.setCapture)
- o.setCapture();
- else if(window.captureEvents)
- window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
- d.onmousemove = function(a)
- {
- if(!a)a=window.event;
- o.style.left = a.clientX+document.body.scrollLeft-x;
- o.style.top = a.clientY+document.body.scrollTop-y;
- o.orig_x = parseInt(o.style.left) - document.body.scrollLeft;
- o.orig_y = parseInt(o.style.top) - document.body.scrollTop;
- }
- d.onmouseup = function()
- {
- if(o.releaseCapture)
- o.releaseCapture();
- else if(window.captureEvents)
- window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
- d.onmousemove = null;
- d.onmouseup = null;
- d.ondragstart = null;
- d.onselectstart = null;
- d.onselect = null;
- o.style.cursor = "normal";
- o.style.zIndex = o.orig_index;
- }
- }
- if (s)
- {
- var orig_scroll = window.onscroll?window.onscroll:function (){};
- window.onscroll = function ()
- {
- orig_scroll();
- o.style.left = o.orig_x + document.body.scrollLeft;
- o.style.top = o.orig_y + document.body.scrollTop;
- }
- }
- }