使用没有jQuery的javascript,我想让用户能够绘制一个将标记照片的矩形。通过在照片上拖动鼠标来选择矩形。当用户拖出该区域时,矩形会拉伸和收缩。用户可以向任何方向拖动,包括向上和向左拖动,就像大多数计算机桌面上的可拖动矩形一样。我应该设置div 对象的样式属性是什么?
编辑:我只是在寻找正确的属性来设置以拖动div边缘。
我想通了。我需要使用 offsetLeft
、offsetRight
、offsetTop
、offsetBottom
、offsetWidth
和offsetHeight
获取测量值,以及 style.left
、style.right
、style.top
、style.bottom
、style.width
和style.height
来设置它们。
看看 jQuery Ressizeable。
如果它符合您的需求,请使用它,否则请查看它是如何实现的。
"可调整大小"的 css 属性,但我认为这只能从右下角开始工作......我建议只侦听鼠标向下事件,然后获取鼠标坐标,然后开始侦听鼠标移动事件,并在每次触发时根据新坐标设置div 的大小/位置,然后在鼠标向上事件上删除 mousemove 事件侦听器。我以前做过,我敢肯定 - 我会寻找代码并将其放入 jsfiddle 中。