Javascript 样式拖动重影元素

Javascript 样式拖动重影元素,javascript,html,css,drag-and-drop,html5-draggable,Javascript,Html,Css,Drag And Drop,Html5 Draggable,我正面临一个问题,我正在拖一个div 虽然ghost元素在MacOs上看起来不错(在Chrome和FireFox上都是这样),但在Windows中它似乎太透明了(在Chrome和FireFox上都是这样)。 我尝试了多种方法,但似乎没有任何效果。 那么,是否有可能设置ghost元素的样式 此外,我还尝试在移动中为该元素创建一个图像,并将其用作重影拖动图像,但透明度问题仍然存在。您可以通过在JavaScript中自己实现元素的拖动来实现这一点。这样,您可以在拖动元素时对其应用CSS类,这可以按照您

我正面临一个问题,我正在拖一个div

虽然ghost元素在MacOs上看起来不错(在Chrome和FireFox上都是这样),但在Windows中它似乎太透明了(在Chrome和FireFox上都是这样)。 我尝试了多种方法,但似乎没有任何效果。 那么,是否有可能设置ghost元素的样式


此外,我还尝试在移动中为该元素创建一个图像,并将其用作重影拖动图像,但透明度问题仍然存在。

您可以通过在JavaScript中自己实现元素的拖动来实现这一点。这样,您可以在拖动元素时对其应用CSS类,这可以按照您希望的任何方式对其进行样式设置

const d='drawing';
const container=document.getElementById('container');
const el=document.getElementById('drag');
var-cOffX=0;
var-cOffY=0;
el.addEventListener('mousedown',dragStart);
函数dragStart(e){
e=e | | window.event;
e、 预防默认值();
cOffX=e.clientX-el.offsetLeft;
cOffY=e.clientY-el.offsetTop;
文件。添加的列表器(“mousemove”,dragMove);
文件。添加的列表器('mouseup',dragEnd);
el.类列表。添加(d);
container.style.cursor='move';
};
功能拖动(e){
e=e | | window.event;
e、 预防默认值();
el.style.top=(e.clientY-cOffY).toString()+'px';
el.style.left=(e.clientX-cOffX).toString()+'px';
};
函数dragEnd(e){
e=e | | window.event;
e、 预防默认值();
文档。删除EventListener('mousemove',dragMove);
文件。删除VentListener('mouseup',dragEnd);
el.类列表。删除(d);
container.style.cursor=null;
};
#容器{
宽度:100vw;
高度:100vh;
保证金:0;
填充:0;
}
#拖{
位置:绝对位置;
高度:100px;
宽度:100px;
背景色:石灰;
边界半径:0;
过渡:背景色0.25s,边框半径0.25s;
光标:移动;
}
#拖,拖{
背景色:海军蓝;
边界半径:50%;
}


您是否尝试克隆元素并用光标移动它?因为您无法修改ghost元素的不透明度。是的,这是最后的手段。您确定不透明度是不可更改的吗?我在trello上看到过,ghost元素完全不透明。它由浏览器处理,因此您无法更改不透明度。您可以定义y我们自己的元素或图像。下面是关于同一主题的讨论:这正是我最终要做的。不过,对于未来的读者,您可以对鬼图像做的一件事显然是使用更改图像本身。该页面的重要引用:
图像通常是一个元素,但也可以是一个元素或任何其他元素可见元素。
因此,如果您使用它,可能会有一些回旋余地……当然,画布可以包含任何内容。