我需要在我的页面上放一张图片。我要禁用图像的拖拽。我尝试了很多方法,但都无济于事。有人能帮我一下吗?
我不想保留那个图像作为背景图像因为我在调整图像的大小。
我需要在我的页面上放一张图片。我要禁用图像的拖拽。我尝试了很多方法,但都无济于事。有人能帮我一下吗?
我不想保留那个图像作为背景图像因为我在调整图像的大小。
当前回答
由于我的图像是使用ajax创建的,因此在windows.load上不可用。
$("#page").delegate('img', 'dragstart', function(事件){event. preventdefault ();});
通过这种方式,我可以控制哪个部分阻塞行为,它只使用一个事件绑定,它适用于未来ajax创建的图像,而无需做任何事情。
与jQuery新的绑定:
$(' # '页)。on('dragstart', 'img', function(event) {event. preventdefault ();}); (感谢@ialphan)
其他回答
这段代码正是您想要的。它可以阻止图像拖动,同时允许依赖于该事件的任何其他操作。
$("img").mousedown(function(e){
e.preventDefault()
});
最简单的跨浏览器解决方案是
<img draggable="false" ondragstart="return false;" src="..." />
问题
img {
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-user-drag: none;
user-drag: none;
-webkit-touch-callout: none;
}
是它不能在firefox中工作吗
你可以将以下内容添加到你不想拖拽的每张图片中(在img标签中):
onmousedown="return false;"
如。
img src="Koala.jpg" onmousedown="return false;"
看看这个答案;在Chrome和Safari中,你可以使用以下样式禁用默认拖拽:
-webkit-user-drag: auto | element | none;
您可以尝试用户选择Firefox和IE(10+):
-moz-user-select: none | text | all | element
-ms-user-select: none | text | all | element
由于我的图像是使用ajax创建的,因此在windows.load上不可用。
$("#page").delegate('img', 'dragstart', function(事件){event. preventdefault ();});
通过这种方式,我可以控制哪个部分阻塞行为,它只使用一个事件绑定,它适用于未来ajax创建的图像,而无需做任何事情。
与jQuery新的绑定:
$(' # '页)。on('dragstart', 'img', function(event) {event. preventdefault ();}); (感谢@ialphan)