zoukankan      html  css  js  c++  java
  • JS通用窗口拖动函数

    <script language="JavaScript" type="text/javascript">
        ////
        // 点击拖动窗口- 调用请使用: onmousedown='Move_obj("objId")'  objId: 表示你想拖动的窗口ID
        ////
        var drag_=false;
        //获取输入:ID, 获得objId对象
        var D=new Function('obj','return document.getElementById(obj);');
        var oevent=new Function('e','if (!e) e = window.event;return e');
        var obj_move=false;
        function Move_obj(obj){
    	    var x,y;
    	    obj_move=true;
    	    //注册obj对象鼠标按下事件
    	    D(obj).onmousedown=function(e){
    	        //取消拖动
    	        if(!obj_move)return false;
    		    drag_=true;
    		    //with(this): 为区域语句设定默认对象。style等价于 this.style
    		    with(this){
    		        //obj对象offsetLeft距离左边距离 不包括marginLeft宽度, offsetTop同理
    			    style.position="absolute";var temp1=offsetLeft;var temp2=offsetTop;
    			    //clientX 事件属性返回当事件被触发时鼠标指针向对于浏览器页面(或当前窗口)的水平坐标。
    			    x=oevent(e).clientX;y=oevent(e).clientY;
    			    document.onmousemove=function(e){
    			        //取消拖动
    				    if(!drag_)return false;
    				    with(this){
    				        //obj距离左边距离 + 外边距 + 鼠标移动距离
    					    style.left=temp1-Number(style.marginLeft.substring(0,style.marginLeft.length-2))+oevent(e).clientX-x+"px";
    					    style.top=temp2-Number(style.marginTop.substring(0,style.marginTop.length-2)) +oevent(e).clientY-y+"px";
    				    }
    			    }
    		    }
    		    document.onmouseup=new Function("drag_=false;obj_move=false;");
    	    }
        }
        </script>
    
  • 相关阅读:
    IIS7下设置AD单点登录
    数据库日志学习
    用AOP改善javascript代码
    NOPI使用手册
    数据库相关常用查询语句
    SQL事务+异常
    IIS文件上传大小修改配置说明
    VB&XML的增删改查
    python--多线程&多进程
    python-经典类和新式类区别
  • 原文地址:https://www.cnblogs.com/henw/p/2088248.html
Copyright © 2011-2022 走看看