Кажется, что входной элемент теряет много функциональности, когда помещается в элемент с draggable = "true". Это похоже на firefox.
Смотрите мой jsfiddle: http://jsfiddle.net/WC9Fe/3/
Html:
<div id="drag" draggable="true">
Drag this div <br />
<input id="message" type="text" />
</div>
<div id="drop">
Drop area
</div>
JS:
$('#drag').on('dragstart', function(e){
e.originalEvent.dataTransfer.setData('Text', $('#message').val());
e.originalEvent.dataTransfer.effectAllowed = 'move';
});
var drop = $('#drop');
drop.on('dragover', function(e){
e.preventDefault();
});
drop.on('dragenter', function(e){
e.preventDefault();
});
drop.on('drop', function(e){
alert('Target succesfully dropped: ' + e.originalEvent.dataTransfer.getData('Text'));
e.preventDefault();
});
Теперь попробуйте выбрать текст во входном файле, используя firefox. Кажется невозможным. Попробуйте то же самое в IE/Chrome. Кажется, все работает нормально.