Javascript - Taille d'une sélection
Fillule
-
jjsteing Messages postés 1803 Statut Contributeur -
jjsteing Messages postés 1803 Statut Contributeur -
Bonjour,
Pour commencer, voici une partie de mon code qui me permet d'obtenir du texte sélectionné dans une page :
selection = document.getSelection();
range = selection.getRangeAt(0);
var offset = range.startOffset;
var container = range.startContainer;
Le problème c'est que je n'arrive pas à calculer la longueur du texte sélectionné !
Y a t-il une fonction qui existe pour ça ? (j'invente, mais du genre rangeSize(), selectionSize() ?)
Sinon quelle est la méthode à suivre pour l'obtenir ?
Je vous remercie d'avance !
Pour commencer, voici une partie de mon code qui me permet d'obtenir du texte sélectionné dans une page :
selection = document.getSelection();
range = selection.getRangeAt(0);
var offset = range.startOffset;
var container = range.startContainer;
Le problème c'est que je n'arrive pas à calculer la longueur du texte sélectionné !
Y a t-il une fonction qui existe pour ça ? (j'invente, mais du genre rangeSize(), selectionSize() ?)
Sinon quelle est la méthode à suivre pour l'obtenir ?
Je vous remercie d'avance !
A voir également:
- Javascript - Taille d'une sélection
- Comment réduire la taille d'un fichier - Guide
- Reduire taille image - Guide
- Afficher taille dossier windows - Guide
- Telecharger javascript - Télécharger - Langages
- Reduire taille clavier iphone - Guide
8 réponses
euh non ça ne marche pas du tout
j'ai également essayé avec taille = len(selection.text)
est ce que ça peut venir de mon navigateur ?
j'ai également essayé avec taille = len(selection.text)
est ce que ça peut venir de mon navigateur ?
undefined aussi !
je vais continuer mes recherches sur google, je finirai bien par trouver ! je posterai ici quand je trouverai :)
merci !
je vais continuer mes recherches sur google, je finirai bien par trouver ! je posterai ici quand je trouverai :)
merci !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Si je puis me permettre, tu obtiens "undefined" parce que ta variable 'selection' n'est pas ce que tu crois être.
1- Qu'est ce que c'est que ton 'document.getSelection()' ? C'est sensé te retourner quoi exactement ? Une valeur, un object de type 'text' ?
Ton problème vient donc plus de la première ligne :
Essai plutôt un truc du genre sélection par identifiant.
Par exemple si tu as déclaré ton champ 'selection' de la manière suivante :
Alors :
Si je puis me permettre, tu obtiens "undefined" parce que ta variable 'selection' n'est pas ce que tu crois être.
1- Qu'est ce que c'est que ton 'document.getSelection()' ? C'est sensé te retourner quoi exactement ? Une valeur, un object de type 'text' ?
Ton problème vient donc plus de la première ligne :
selection = document.getSelection();
Essai plutôt un truc du genre sélection par identifiant.
Par exemple si tu as déclaré ton champ 'selection' de la manière suivante :
<input type='text' id='selection' value=''/>
Alors :
var selectObj = document.getElementById('selection');
if ( selectObj != null ){
var selection = selectObj.value;
alert('Longueur du champ = '+selection.length);
}
kij_82, la ca te donne le nb de caractere total dans ton champs texte, or, je pense qu il voudrais savoir conbien de caracteres de ce champ texte sont sélectionnés.. d où, je suppose, le range()...
Autant je suis d accord avec toi sur le code pour le champ entier, mais j avoue que je peche concernantt la selection...
Autant je suis d accord avec toi sur le code pour le champ entier, mais j avoue que je peche concernantt la selection...
Ha effectivement j'ai lu trop vite et mal compris le problème ^^
Mum... faut réfléchir mais là j'avoue que je pars en vacances, bon courage ^^
Mum... faut réfléchir mais là j'avoue que je pars en vacances, bon courage ^^
je pense que ca peut t aider :)
https://forum.alsacreations.com/topic-24-42513-1-Resolu-JQuery--recuperer-une-partie-dun-texte-selectionne.html
https://forum.alsacreations.com/topic-24-42513-1-Resolu-JQuery--recuperer-une-partie-dun-texte-selectionne.html