坐标定位及完美拖拽的一些总结
2012-01-09 13:58
393 查看
1鼠标坐标与卷轴兼容化: screenX:鼠标在显示屏幕上的坐标。 clientX:鼠标在页面显示区域的坐标。(即如果页面滚动了,以页面显示的左上角作为基准) 各浏览器通用。 pageX:火狐浏览器可用,以整个页面为标准。即PageY=clientY+scrollTop-clientTop 但是这么写肯定是不行的,scrollTop有兼容性问题,于是下面代码: [crayon-50361fa01d349/] [crayon-50361fa01d748/] [crayon-50361fa01db2e/] 300 403 703 ie下弹出300与403,这样利用兼容性写法模拟pageX即可。。(这里默认clientTop为0) 2 top与posTop posTop的数值其实和top是一样的,但区别在于,top固定了元素单位为px,而posTop只是一个数值 因此posTop其实就是避免了类似 elem.style.top=elem1.offsetTop+”px”这类写法 结合两者可以写一个效果,所谓的层跟随卷轴来动 3.scrollHeight 与 offsetHeight 这一段摘自网上,已经测试过了 offsetHeight是自身元素的高度,scrollHeight是 自身元素的高度+隐藏元素的高度。 [crayon-50361fa01df08/] 将依次输出100,250。因为已经指定了元素的height为100px,所以offsetHeight始终为100px;内部元素为250px,而容器元素只有100px,那么还有150px的内容它无法显示出来,但它却是实际存在的,所以scrollHeight值为100+150=250。 4位置问题 在网上看到了一个函数 [crayon-50361fa01e2e9/] [crayon-50361fa01e6cf/] [crayon-50361fa01eab8/] [crayon-50361fa01ee9e/] [crayon-50361fa01f28f/] [crayon-50361fa01f676/] [crayon-50361fa01fa5e/] [crayon-50361fa01fe5f/] [crayon-50361fa020259/] [crayon-50361fa020610/] [crayon-50361fa020a00/] getBoundingClientRect(),本来是ie特有的,现在基本所有浏览器都支持了,再不用写恶心的迭代offsetTop了。。。。 附上这个函数返回值的的示意图,含有滚动条情况下的 http://www.css88.com/wp-content/uploads/2009/08/2008100603040663.gif 不过如果单个小东西调试的话用offsetLeft跟offsetTop还是很方便的 5.拖动原理 基本思路 鼠标按下,激活拖拽 onmousedown=function(e){var e = e | window.event; ondrag=true} 鼠标抬起,取消拖拽 onmouseup=function(e){var e [...]
相关文章推荐
- 总结CSS的position定位属性在使用的一些重点
- 百度地图的定位以及拖拽(显示坐标位置)
- 关于absolute定位的一些问题总结
- 定位布局的一些总结
- 关于崩溃等问题的定位总结(使用qcc的一些方法来尝试)
- C语言中return的一些总结
- 关于集合类的一些总结
- Spring MVC学习总结(6)——一些Spring MVC的使用技巧
- 有关c的一些总结
- 字符串数组的一些处理方法总结
- 本人对于“用例”的一些理解和总结
- 我用的一些Node.js开发工具、开发包、框架等总结
- javascript实现完美拖拽效果
- css代码中position的定位,baidu+总结
- android 开发中总结的一些经验
- 为你总结一些php系统类函数
- iPhone 开发过程中的一些小技术的总结(转)
- 一些觉得要记住的cocos2d-x方法(总结)
- 关于最近学习的一些方法总结
- 原生js的一些研究和总结(1)