js拖拽面向对象
来源:互联网 发布:万网已备案未注册域名 编辑:程序博客网 时间:2024/06/15 10:40
//关于 this问题指向,函数里面还有函数的话,必须要把第一个函数的this保存下来给第二个函数访问。
<script>
window.onload=function(){var t=new drag("box")
t.init();
}
function drag(name){
this.div=document.getElementById(name);
this.x;
this.y;
}
drag.prototype.init=function(){
var me=this;
this.div.onmousedown=function(e){
var e=e||event;
me.down(e);
}
}
drag.prototype.down=function(e){
this.x=e.clientX-this.div.offsetLeft;
this.y=e.clientY-this.div.offsetTop;
var me=this;
document.onmousemove=function(e){
var e=e||event;
me.move(e);
}
document.onmouseup=function(){
me.up()
}
}
drag.prototype.move=function(e){
this.divx=e.clientX-this.x;
this.divy=e.clientY-this.y;
this.width=document.documentElement.clientWidth-this.div.offsetWidth;
this.height=document.documentElement.clientHeight-this.div.offsetHeight;
if(this.divx<0){this.divx=0}else if(this.divx>this.width){this.divx=this.width}
if(this.divy<0){this.divy=0}else if(this.divy>this.height){this.divy=this.height}
this.div.style.left=this.divx+"px"
this.div.style.top=this.divy+"px"
var me=this;
}
drag.prototype.up=function(){
document.onmouseup=null;
document.onmousemove=null;
}
</script>
</head>
<body>
<div id="box" style=" width:100px;height:100px; background:#0F9; position:absolute"></div>
</body>
0 0
- js拖拽面向对象
- js面向对象实现元素拖拽
- js面向对象(json对象、继承、面向对象拖拽)
- js面向对象尝试
- js面向对象
- 面向对象的js
- js中的面向对象
- JS面向对象
- JS面向对象2
- 06 JS面向对象
- JS 面向对象
- JS面向对象例子
- 面向对象 js 打包
- js面向对象设计
- js面向对象
- js--面向对象
- js面向对象总结
- js面向对象工作总结
- 【JavaWeb-19】Hibernate简介、入门案例、Session操作、2个配置文件详解
- redis和memcache比较
- vison2013安装与激活方法
- C++中输出进制以及布尔类型
- test
- js拖拽面向对象
- 20个非常有用的Java程序片段
- Keyframes介绍
- ruby 不使用simple_form的例子,加个datepicker
- spring xmlBeanFactory
- MATLAB入门教程
- Listview onScrollListener使列表回到顶部
- 宏#define命令练习3。
- 在AndroidStudio中导入Library项目