js 鼠标拖动对象 可让任何div实现拖动效果

 更新时间:2009年11月09日 16:49:21   作者:  
js鼠标拖动对象,可让任何div实现拖动效果,需要的朋友可以参考下。
js鼠标拖动对象:
复制代码 代码如下:

//定义鼠标拖动对象
drag=function (a,o){
     var d=document;if(!a)a=window.event;
        if(!a.pageX)a.pageX=a.clientX;
        if(!a.pageY)a.pageY=a.clientY;
     var x=a.pageX,y=a.pageY;
     if(o.setCapture)
         o.setCapture();
     else if(window.captureEvents)
         window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
     var backData = {x : o.style.top, y : o.style.left};
     d.onmousemove=function(a){
         if(!a)a=window.event;
         if(!a.pageX)a.pageX=a.clientX;
         if(!a.pageY)a.pageY=a.clientY;
         var tx=a.pageX-x+parseInt(o.style.left),ty=a.pageY-y+parseInt(o.style.top);
         o.style.left=tx+"px";
         o.style.top=ty+"px";
            x=a.pageX;
            y=a.pageY;
     };
     d.onmouseup=function(a){
         if(!a)a=window.event;
         if(o.releaseCapture)
             o.releaseCapture();
         else if(window.captureEvents)
             window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
         d.onmousemove=null;
         d.onmouseup=null;
         if(!a.pageX)a.pageX=a.clientX;
         if(!a.pageY)a.pageY=a.clientY;
         if(!document.body.pageWidth)document.body.pageWidth=document.body.clientWidth;
         if(!document.body.pageHeight)document.body.pageHeight=document.body.clientHeight;
         if(a.pageX < 1 || a.pageY < 1 || a.pageX > document.body.pageWidth || a.pageY > document.body.pageHeight){
             o.style.left = backData.y;
             o.style.top = backData.x;
         }
     };
}

使用方法:
复制代码 代码如下:

<div id="divPhoto" onmousedown="drag(event,this)"></div>

相关文章

  • 原生JS实现鼠标滑动撒爱心特效

    原生JS实现鼠标滑动撒爱心特效

    这篇文章主要为大家详细介绍了原生JS实现鼠标滑动撒爱心特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • Javascript事件热键兼容ie|firefox

    Javascript事件热键兼容ie|firefox

    Javascript热键兼容ie,firefox,需要的朋友可以参考下。
    2010-12-12
  • javascript实现文字跑马灯效果

    javascript实现文字跑马灯效果

    这篇文章主要为大家详细介绍了javascript实现文字跑马灯效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • JavaScript实现跟随鼠标移动的盒子

    JavaScript实现跟随鼠标移动的盒子

    这篇文章主要为大家详细介绍了JavaScript实现跟随鼠标移动的盒子,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-01-01
  • 判断是否存在子节点的实现代码

    判断是否存在子节点的实现代码

    下面小编就为大家带来一篇判断是否存在子节点的实现代码。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • 2种简单的js倒计时方式

    2种简单的js倒计时方式

    这篇文章主要为大家详细介绍了2个简单js倒计时方式,一是带天数的倒计时,二是单纯分钟和秒倒计时,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例

    js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例

    这篇文章主要介绍了js常用方法、检查是否有特殊字符串、倒序截取字符串操作,结合完整实例形式分析了JavaScript字符串转换、检测、倒序、截取等相关操作技巧,需要的朋友可以参考下
    2020-01-01
  • 查看Next.js默认配置信息的几种方法

    查看Next.js默认配置信息的几种方法

    文章介绍了几种查看Next.js默认配置信息的方法,包括使用Next.js CLI、getConfigAPI、实验性CLI命令以及在开发模式下访问特定路径,感兴趣的小伙伴跟着小编一起来看看吧
    2025-02-02
  • web打印小结

    web打印小结

    本文主要介绍了一款比较强大的web打印工具lodop实现将winform客户端的打印,移到网页上由客户自行打印,打印要求是根据一定的格式实现套打的过程与方法。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • js跳转到指定url的方法与实际使用

    js跳转到指定url的方法与实际使用

    这篇文章主要给大家介绍了关于js跳转到指定url的方法与实际使用的相关资料,要实现JavaScript跳转到指定URL,可以使用window.location对象来实现,需要的朋友可以参考下
    2023-09-09

最新评论