У меня есть страница с парой элементов DIV. Когда пользователь нажимает комбинацию клавиш CTRL + ENTER, мне нужно отобразить (с помощью alert ()) текст, который пользователь выбрал ранее. Я нашел решение , и оно работает как брелок, но осталась еще одна вещь.
Мне нужно сделать триггер события, только когда выделенный текст находится внутри DIV с классом "main_content". Я пытался присвоить keyup
для $ ('DIV.main_content'), но это не работает.
Есть ли способ вызвать событие, только если выделен текст внутри $ ('DIV.main_content')?
Вот рабочий код, который срабатывает на весь документ:
// Get user selection text on page
function getSelectedText() {
if (window.getSelection) {
return window.getSelection();
}
else if (document.selection) {
return document.selection.createRange().text;
}
return '';
}
$(document).ready(function(){
$(document).keydown(function(e) {
if(e.which == 13 && e.ctrlKey) {
alert(getSelectedText());
return false;
}
});
});
См. Код с разметкой в jsFiddle