📜  如何禁用使用 JavaScriptjQuery 从 HTML 页面拖动图像?(1)

📅  最后修改于: 2023-12-03 15:38:52.589000             🧑  作者: Mango

如何禁用使用 JavaScript/jQuery 从 HTML 页面拖动图像?

在 HTML 页面中,我们可以使用 JavaScript 或 jQuery 在网页上实现拖放功能,即通过拖动图像来实现一些操作。但在某些场合下,我们可能需要禁用这个功能,比如一个图片无法被拖动,这时候我们就需要禁用 JavaScript/jQuery 从 HTML 页面拖动图像的功能。下面介绍三种方法实现这个需求。

方式一:使用 HTML 属性

我们可以在 <img> 元素中添加 draggable="false" 的属性来禁用拖动功能,代码如下:

<img src="example.png" draggable="false">

但是这种方法只能禁用图像的拖动功能,无法禁用其他元素的拖动功能。

方式二:使用 CSS 样式

我们可以使用 CSS 样式来禁用拖动功能,代码如下:

/* 禁用所有元素的拖动功能 */
* {
   -webkit-user-drag: none; /* Webkit 浏览器 */
   -khtml-user-drag: none; /* KHTML 浏览器 */
   -moz-user-drag: none; /* Firefox 浏览器 */
   -o-user-drag: none; /* Opera 浏览器 */
   user-drag: none;
}

/* 禁用单独元素的拖动功能 */
img {
   -webkit-user-drag: none;
   -khtml-user-drag: none;
   -moz-user-drag: none;
   -o-user-drag: none;
   user-drag: none;
}

这种方法可以禁用所有元素的拖动功能,也可以禁用单独元素的拖动功能。

方式三:使用 JavaScript/jQuery

我们可以使用 JavaScript 或 jQuery 禁用拖动功能,代码如下:

/* 禁用所有元素的拖动功能 */
$("body").on("dragstart", "*", function(e) { 
    return false; 
});

/* 禁用单独元素的拖动功能 */
$("img").on("dragstart", function(e) { 
    return false; 
});

这种方法可以禁用所有元素的拖动功能,也可以禁用单独元素的拖动功能。

以上三种方法均可以禁用使用 JavaScript/jQuery 从 HTML 页面拖动图像的功能。