【发布时间】:2015-10-17 10:37:51
【问题描述】:
我想将光标更改为copy,同时将元素拖动到指定的可放置对象上。 我使用它通过拖放从本地文件系统上传文件到浏览器窗口。 我可以改变元素的外观,但光标不会改变。这是我正在使用的代码:
HTML
<div class="droppable"></div>
CSS
.droppable {
width: 200px;
height: 100px;
background: red;
}
.droppable.active {
background: green;
cursor: copy;
}
JS
droppable = $('.droppable');
droppable.on('dragover dragenter', function(event) {
droppable.addClass('active');
event.preventDefault();
event.stopPropagation();
});
droppable.on('dragleave', function(event) {
droppable.removeClass('active');
event.preventDefault();
event.stopPropagation();
});
您可以在这里自己尝试:http://jsfiddle.net/27px4u5h/
该演示还包含第二个(橙色)元素,显示光标的外观。
为什么这不起作用?
【问题讨论】:
-
能贴出可拖动的代码吗?
-
@DimalChandrasiri 抱歉,我想从本地文件系统中删除文件。这就是我正在使用的所有代码。我将把它添加到问题中。
-
你应该为你的可拖动对象使用一个 id
-
@RachelGallen 您能否提供一些信息,为什么我应该使用 id?上课有什么问题?我也可能有多个这些元素。 :)
-
@lampshade 实际上没关系,只是你先调用另一个类 .active 但如果你只是要使用 :active 那么使用类而不是 id 是可以的,特别是如果你有多个实例
标签: javascript html css