2017-01-03 3 views
1

Hallo, ich versuche, die HTML-Drag-and-Drop-Funktion mit Jquery zu verwenden. Ich generiere meine ziehbar (eine Taste) wie dieseOndragstart nicht in Firefox auslösen

$("#tb > tbody > tr").append(($("<td>")).append($("<input/>", {type:"button", id:"bt", draggable:"true", value:"test", class:"bt-test"}))).append($("</td>")); 

Bisher und nach einem wenig über das Thema zu lesen, ich versuche, mit den verschiedenen Veranstaltungen wie diese zu behandeln:

$(document).on("dragstart", ".bt-test", function(evt) 
{ 
    evt.originalEvent.dataTransfer.setData("text", $(this).val()); 
    alert(evt.originalEvent.dataTransfer.getData("text")); 
    evt.originalEvent.preventDefault(); 
}); 
$(document).on('dragenter', function(evt){evt.originalEvent.preventDefault();}); 
$(document).on('dragleave', function(evt){evt.originalEvent.preventDefault();}); 
$(document).on('dragover', function(evt){evt.originalEvent.preventDefault();}); 


// still irrelevant at this point 
$(document).on("drop", ".btCase", function(evt) 
{ 
    var data = evt.originalEvent.dataTransfer.getData("text"); 
    $(this).val(data); 
    event.originalEvent.preventDefault(); 
}); 

Der Alert innerhalb des Dragstart-Listeners zeigt sich gut in Chrome, aber es ist nicht auf Firefox.

Ich habe bereits versucht, eine ondragstart="dragstart_handler(event);" direkt in meine Taste wie in https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API erwähnt, aber das Problem bleibt. Ich versuchte auch, die event.originalEvent.preventDefault(); durch return false();

zu ersetzen Irgendwelche Tipps?

edit: Geige>http://jsfiddle.net/Nn4x2/4/

+0

Können Sie ein funktionierendes Beispiel auf JSFiddle oder anderen zur Verfügung stellen? –

+0

hier gehen Sie http://jsfiddle.net/Nn4x2/4/ –

Antwort

0

Dieses mit einem div Element funktioniert, finden Sie http://jsfiddle.net/Nn4x2/26/ Es scheint ziehbar Eingabetasten sind nicht in Firefox unterstützt. Es kann am besten sein, stattdessen ein gestyltes Ankerelement zu verwenden.

Dies wird als Firefox-Bug für Tastenelemente angemeldet - siehe https://bugzilla.mozilla.org/show_bug.cgi?id=568313

+0

Ja, ich sah das; Ich war nur neugierig auf die Inkompatibilität. Danke für den Link. Ich nehme an, ich werde sowieso Anker benutzen. Danke –

+0

Gern geschehen, viel Glück. –

Verwandte Themen