[英]Apply CSS to active dropped element in a drop area using JavaScript
我有几个可拖动的节点,放置后需要突出显示,只有放置的元素需要有边框。
例如:我放下nodeA,它将突出显示。 稍后当我放下nodeB时,则应该突出显示nodeB而不应该突出显示nodeA。
这是我编写的函数:
function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("text");
var nodeCopy = document.getElementById(data).cloneNode(true);
test++;
nodeCopy.id =test; /* We cannot use the same ID */
var newNodeId= nodeCopy.id;
ev.target.appendChild(nodeCopy);
document.getElementById(newNodeId).className += " draggeddStyle";
}
我可以使用以下方法突出显示该节点:
document.getElementById(newNodeId).className += " draggeddStyle;
之后,如果我拖动另一个节点,则两个节点最终将具有相同的样式。
只需修改您的代码示例。
function drop(ev) {
ev.preventDefault();
$(".draggeddStyle").removeClass("draggeddStyle");/* added this line */
var data = ev.dataTransfer.getData("text");
var nodeCopy = document.getElementById(data).cloneNode(true);
test++;
nodeCopy.id =test; /* We cannot use the same ID */
var newNodeId= nodeCopy.id;
ev.target.appendChild(nodeCopy);
document.getElementById(newNodeId).className += " draggeddStyle";
}
我认为这可行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.