J'ai une page avec deux éléments DIV. Lorsque l'utilisateur appuie sur la combinaison de touches CTRL + ENTRÉE, je dois afficher (via alert()) le texte, cet utilisateur précédemment sélectionné. J'ai trouvé le solution et cela fonctionne comme un charme, mais il reste encore une chose à faire.jQuery: Déclenchement du clavier uniquement dans une division spécifique
J'ai besoin de déclencher un événement, seulement lorsque le texte sélectionné est dans un DIV avec la classe "main_content". J'ai essayé d'affecter keyup
à $ ('DIV.main_content'), mais cela ne fonctionne pas.
Existe-t-il un moyen de déclencher l'événement uniquement si le texte à l'intérieur de $ ('DIV.main_content') est sélectionné?
Voici un code de travail qui déclenche l'ensemble du document:
// 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;
}
});
});
See the code with markup in jsFiddle
merci beaucoup, je n'ai même pas pensé à quelque chose comme ça - vous obtenez mon respect complet. J'ai vérifié vos projets aussi, rangy est génial! Bonne chance dans votre travail! :) –