У меня проблема с проектом, над которым я работаю. Это веб-приложение с интерфейсом, который частично существует из перетаскиваемых элементов.Невозможно перетащить элемент кнопки в Firefox
Проблема в том, что перетаскиваемые элементы div работают нормально, но элементы кнопки не будут задействовать перетаскивание в Firefox, но они работают в Chrome. Я думаю, что это может быть связано с тем, как Firefox обрабатывает уже существующие события кнопки, что, вероятно, отличается от того, как это делает Chrome.
Я знаю, что я могу использовать jQuery UI, но этот проект мне не позволяет.
Вот jsfiddle моей проблемы: http://jsfiddle.net/MJN6c/6/
Кто-нибудь знает, как я могу получить перетаскивать события, чтобы вызвать на кнопки в Firefox?
Код:
var stage = document.querySelector('#drop');
var btnsAni = document.querySelectorAll('.btn-ani');
[].forEach.call(btnsAni, function (btn) {
btn.addEventListener('dragstart', dragStart, false);
btn.addEventListener('dragend', dragEnd, false);
});
stage.addEventListener('dragenter', dragEnter, false);
stage.addEventListener('dragleave', dragLeave, false);
stage.addEventListener('dragover', dragOver, false);
stage.addEventListener('drop', dragDrop, false);
function dragStart(e) {
if (e.stopPropagation) e.stopPropagation();
e.dataTransfer.effectAllowed = 'copy';
e.dataTransfer.setData('Text', this.id);
return false;
}
function dragEnd(e) {
e.preventDefault();
if (e.stopPropagation) e.stopPropagation();
return false;
}
function dragEnter(e) {
e.preventDefault();
if (e.stopPropagation) e.stopPropagation();
return false;
}
function dragOver(e) {
e.preventDefault();
if (e.stopPropagation) e.stopPropagation();
e.dataTransfer.dropEffect = 'copy';
return false;
}
function dragLeave(e) {
e.preventDefault();
if (e.stopPropagation) e.stopPropagation();
return false;
}
function dragDrop(e) {
e.preventDefault();
if (e.stopPropagation) e.stopPropagation();
alert("Dropped!");
}
Что касается обычного jQuery? –
Возможно, это будет возможно, я должен спросить. Но если это единственное (достойное) решение, я не думаю, что это будет большой проблемой. – Levi
Это ошибка [firefox] (https://bugzilla.mozilla.org/show_bug.cgi?id=646823), я не мог найти никаких обходов для этого ... Любые обновления на вашей стороне? – madpoet