编程语言
首页 > 编程语言> > javascript-使用固定位置/固定位置时,Chrome会切断幻影图像

javascript-使用固定位置/固定位置时,Chrome会切断幻影图像

作者:互联网

我正在尝试使用HTML5拖放和位置:固定为从菜单中拖动元素,该菜单保持在屏幕左侧的固定位置.

以下代码在Safari和Firefox中可以正常工作,但是当我在Chrome中尝试使用时,滚动后,从拖放API生成的“鬼影”图片不可见.如果向右滚动,则可以拖动一部分重影,这对我来说表明它已以某种奇怪的方式被裁剪.将左div的位置设置为绝对可以正常工作,但是如果可以的话,我宁愿不使用JS来计算位置.

我确实为此创建了一个小提琴,但是它还有其他一些在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错误报告:Issue 605119

似乎有关,因为它是在谈论相对位置的罪魁祸首.但这已经有将近两年的历史了,并且据报导已修复,因此,到这一点很可能已经合并到Chrome中.还有其他人遇到过此问题吗?如果是,您采取了哪些步骤来解决此问题?

解决方法:

这是一个出现在chrome 63.0.3223.0中的错误(请参阅此issue).

根据问题跟踪器的说法,此问题应在几周后的下一个chrome稳定版本(64.x)中修复.

请注意,该修复程序已经在Chrome Canary中可用.

更新25-01-2018

Chrome 64现在可用

标签:html5,google-chrome,drag-and-drop,css,javascript
来源: https://codeday.me/bug/20191110/2014013.html