公司要用一个 正好练练手!
参考的google的拖拽布局,
用的鼠标的x=e.clientx 和 y=e.clienty,判断是否在其它块里面
offest = pos(div) div为需要检测碰撞的块
x>offset.left&&x<offset.right&&y>offset.top&&y<offset.bottom
有一个占位div 一个代理div
占位div就是放到的位置
代理div就是拖拽时候的代理层
在写的时候遇到了一些问题和要注意的地方
1.在ie6,7下 如果没有设置高度和宽度 直接设置透明度是不会透明的 可以在样式写*zoom:1 触发它的layout
2.拖拽的时候可能会选中文字图片什么的 在退拽的过程中可以不断的清空选中 window.getSelection? window.getSelection().removeAllRanges(): document.selection.empty();
3.初始化的时候 我会清除掉里面的dom块 如果用innerHTML ="" 发现ie6下加上dom块 样式加载不了.... 所以用的removeChild 而且多遍历了一次
4. 当占位div(虚线的div)加到页面上的时候 计算碰撞的位置 是占位div 和 别选中的那个div合起来的面积