Есть onblur
событие, которое вы можете добавить после выбора:)
var t = document.getElementsByTagName('textarea')[0];
t.onselect = function() {
alert('select');
if (typeof(t.onblur) !== 'function') {
t.onblur = function() {
alert('selection cleared');
t.onblur = null;
}
}
}
jsFiddle
Моя идея: создать функцию, которая будетвыполняется после того, как текст был выделен, и после того, как он был выполнен, отмените его ... так как больше нет выделения текста, и когда текст будет выбран снова - функция будет определена снова