0

我正在开发一个图像裁剪器,想问您以下问题:为了防止在您按下图像上的左键并按住它时出现默认的拖放操作,请尝试移动鼠标,不是吗?如果仅将图片用作 div 框的背景,是否可以跨浏览器?

就像这样:

<div id="theDiv" style="background:url(pic.png) no-repeat;"></div> 

你怎么想?可以接受吗?不会太丑吧?还是应该用JS来做?

4

6 回答 6

0

您可以设置自己的鼠标事件,这将是更合乎逻辑的方式。您甚至不需要在每个浏览器的基础上编写代码 AFAIK。此事件处理程序也可用于设置裁剪框。

但是,如果您没有计划扩展这么多,您的方法会更简单。

于 2009-11-27T11:31:51.877 回答
0

我也会这样做,没有其他真正的方法(据我所知)做你想做的跨浏览器。

于 2009-11-27T11:23:54.613 回答
0

你在使用框架吗?它们中的每一个都没有可靠的“dragstart”实现,可以简单地返回false吗?如我错了请纠正我。

于 2009-11-27T11:31:32.797 回答
0

如果仅将图片用作div框的背景,那不是跨浏览器吗?

是的,但你仍然会开始拖累;如果您将指针移到包含文本的页面的一部分,您将选择文本,这可能是您不想要的。

我会坚持使用x.ondragstart=x.onmousedown= function() { return false; };.

于 2009-11-27T12:23:28.300 回答
0

例如,您可以看一下这个,这是一个用纯 JavaScript 编写的简单快速的图像裁剪器。它使用 mousedown 检测拖动开始,使用 mouseup 检测拖动结束。在拖动过程中,它会监听document.onmousemove事件。

于 2013-12-03T07:41:33.367 回答
0

我可能会使用draggable="false"orondrag="return false"但你的方法也同样有效。

于 2013-08-17T05:43:57.690 回答