0

我们在 Firefox 56 中遇到了 javascript 拖放的重大问题。症状是拖放停止在所有选项卡/页面上工作 - 而不仅仅是我们的选项卡。

注释掉这个 jsfiddle 中的调用setData()会使问题可靠地发生。我们的代码正在调用setData;但是,经过几次拖动后,它就停止了工作。

https://jsfiddle.net/5jobd9tw/27/

function createLi (number) {
let li = document.createElement('li');
li.draggable = true;
let span = document.createElement('span')
span.appendChild(
    document.createTextNode('element ' + number)
)
li.appendChild(span);
li.addEventListener('dragstart', function (event) {
    log('element', number, 'dragstart event');
    event.dataTransfer.setData('text/plain', 'foobar');
    // event.dataTransfer.setData('text/json',
    //  JSON.stringify({ foo: 'bar' })
    // )
    event.dataTransfer.setDragImage(noisyCanvas(), 50, 50);
});
li.addEventListener('dragenter', function (event) {
    log('element', number, 'dragenter event');
});
li.addEventListener('dragleave', function (event) {
    log('element', number, 'dragleave event');
});
li.addEventListener('dragend', function (event) {
    log('element', number, 'dragend event');
});
return li;
}
4

0 回答 0