发现了一些小bug
老师讲的太好了,不过那个拖动代码好像有一些小bug,如果把选区移动到最右边,然后拖动最左边的滑块往右滑动,使选区宽度减为0,就可以把选区移出图片区域,下边也是一样,是不是要限制拖动范围啊?
老师讲的太好了,不过那个拖动代码好像有一些小bug,如果把选区移动到最右边,然后拖动最左边的滑块往右滑动,使选区宽度减为0,就可以把选区移出图片区域,下边也是一样,是不是要限制拖动范围啊?
2014-11-07
function leftMove(e){ var x = e.clientX;//鼠标纵坐标 if(x <= 200){ x = 200; } if(x >= 560){ x = 559; } var mainX = getPosition(mainDiv).left;//选取框相对于屏幕上边的距离 var addWidth = mainX - x;//增加的高度 var widthBefore = mainDiv.offsetWidth - 2;//原来的高度 mainDiv.style.width = widthBefore +addWidth + "px"; mainDiv.style.left = mainDiv.offsetLeft - addWidth + "px"; } //右边right移动 function rightMove(e){ var x = e.clientX;//鼠标x坐标 if(x >= 560){ x = 559; } if(x <= 200){ x = 200; } var addWidth = "";//鼠标移动后选取框增加的宽度 var widthBefore = mainDiv.offsetWidth -2;//选取框变化前的宽度 addWidth = x - getPosition(mainDiv).left - widthBefore;//鼠标增加的宽度 mainDiv.style.width = addWidth + widthBefore + "px";//选取框变化后 } //上边up移动 function upMove(e){ var y = e.clientY;//鼠标纵坐标 if(y < 100){ y = 100; } if(y >=580){ y=579; } var mainY = getPosition(mainDiv).top;//选取框相对屏幕上边的距离 var addHeight = mainY - y;//增加的高度 var heightBefore = mainDiv.offsetHeight -2;//原来的高度 mainDiv.style.height = heightBefore + addHeight + "px"; mainDiv.style.top = mainDiv.offsetTop - addHeight + "px"; } //下边down移动 function downMove(e){ var y = e.clientY;//鼠标纵坐标 if(y >= 580){ y = 579; } if(y <=100){ y = 100; } var mainY = getPosition(mainDiv).top;//选取框相对屏幕上边的距离 var heightBefore = mainDiv.offsetHeight - 2;//原来的高度 var addHeight = y - heightBefore - mainY; mainDiv.style.height = heightBefore + addHeight + "px"; }
我在上面加了几句超级简单的限制语句。就不会跑出去了。
举报