我正在尝试使用HTML5拖放和
我在网上搜索到了Chromium的以下bug报告: 问题 605119 它似乎与位置相对有关。但是那已经有将近两年了,而且已经被报告修复,所以这个问题很可能已经被合并到Chrome中了。有其他人遇到这个问题吗?如果有,你们采取了什么步骤来解决它?
position: fixed
从位于屏幕左侧固定位置的菜单中拖动元素。下面的代码在Safari和Firefox中运行良好,但在Chrome中,在滚动后,从拖放API生成的“ghost”图像不可见。如果您恰当地滚动,可以拖动“ghost”图像的一部分,这表明它以某种奇怪的方式被裁剪。将left
div的位置设置为absolute
可以正常工作,但如果可能的话,我宁愿不使用JS计算定位。我确实为此创建了一个fiddle,但在Safari和Firefox中运行时存在其他一些非常奇怪的问题(尽管它在Chrome中显示了问题):https://jsfiddle.net/e4fvrr5y/ 这是我用来测试的完整代码:<!doctype html>
<head>
<style>
body {
display: flex;
}
.left {
width: 200px;
height: 200px;
background-color: #0f0;
position: fixed;
}
.right {
margin-left: 200px;
width: 200px;
height: 3000px;
background: linear-gradient(white, black);
}
.draggable {
background-color: #00f;
padding: 20px;
color: #fff;
cursor: pointer;
}
</style>
</head>
<body>
<div class="left">
<div class="draggable" draggable="true" ondragstart="drag(event)">Draggable element</div>
</div>
<div class="right">
</div>
<script>
function drag(ev) {
ev.dataTransfer.setData("text", "foo");
}
</script>
</body>
</html>
我在网上搜索到了Chromium的以下bug报告: 问题 605119 它似乎与位置相对有关。但是那已经有将近两年了,而且已经被报告修复,所以这个问题很可能已经被合并到Chrome中了。有其他人遇到这个问题吗?如果有,你们采取了什么步骤来解决它?