Методом научного тыка получилось так
$(function() {
$(document).on('input drop', 'input, textarea', function(e){
if (e.originalEvent.inputType == 'insertFromPaste') {
var new_text = $(this).val().replace(/\s\s+/g, ' ').trim();
$(this).val(new_text);
} else {
event.preventDefault();
var new_text = event.dataTransfer.getData("Text").replace(/\s\s+/g, ' ').trim();
$(this).val(new_text);
}
});
});
В хроме и мазиле работает, что мне нужно. Что можно и нужно заменить/улучшить? Спасибо.