Selection de texte
Fermé
kanakus
Messages postés
20
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
25 juin 2009
-
7 nov. 2007 à 14:07
sam - 9 avril 2008 à 19:36
sam - 9 avril 2008 à 19:36
A voir également:
- Selection de texte
- Excel cellule couleur si condition texte - Guide
- Mettre un texte en majuscule - Guide
- Texte annonce hôtesse de l'air décollage ✓ - Forum Réseaux sociaux
- Deflouter texte - Forum Logiciels
- Transcription audio en texte word gratuit - Guide
11 réponses
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
920
7 nov. 2007 à 15:52
7 nov. 2007 à 15:52
regarde celle de CCM !
function insertTag ( txtName, tag, enclose ) { var closeTag = ((enclose) ? "</" + tag + ">" : ""); var Tag = "<" + tag + ">"; var txtObj = eval ( txtName ); if (ie==1) { var str = document.selection.createRange().text; txtObj.focus(); var sel = document.selection.createRange(); sel.text = Tag + str + closeTag; return; } else { // position du scroll oldPos = txtObj.scrollTop; oldHght = txtObj.scrollHeight; // position du curseur pos = txtObj.selectionEnd + Tag.length + closeTag.length; txtObj.value = txtObj.value.substr(0, txtObj.selectionStart) + Tag + txtObj.value.substr(txtObj.selectionStart, txtObj.selectionEnd-txtObj.selectionStart) + closeTag + txtObj.value.substr(txtObj.selectionEnd); // repositionnement cuseur aprés la balise fermante // peut être grandemant amélioré ;-) txtObj.selectionStart = pos; txtObj.selectionEnd = pos; // calcul et application de la nouvelle bonne postion du scroll newHght = txtObj.scrollHeight - oldHght; txtObj.scrollTop = oldPos + newHght; } txtObj.focus(); }
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
920
15 nov. 2007 à 15:36
15 nov. 2007 à 15:36
salut,
est-ce que tu as réussi à déceler une erreur ?
utilises WebDevelopper pour FireFox si tu veux, il affiches les erreurs de Javascript.
est-ce que tu as réussi à déceler une erreur ?
utilises WebDevelopper pour FireFox si tu veux, il affiches les erreurs de Javascript.
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
920
7 nov. 2007 à 14:13
7 nov. 2007 à 14:13
salut,
peux tu nous montrer du code et nous dire où ça coince exactement ?
peux tu nous montrer du code et nous dire où ça coince exactement ?
Bonjour,
# <script type="text/javascript">
# function getSelectedText(){
# if (window.getSelection){
# var str = window.getSelection();
# }else if (document.getSelection){
# var str = document.getSelection();
# }else {
# var str = document.selection.createRange().text;
# }
# return str;
# }
</script>
function detectMouse(e){
if(parseInt(navigator.appVersion) >=4){
if(navigator.appName == 'Netscape'){
document.getElementById('zone').value = e.pageX ;
document.getElementById('zone1').value = e.pageY;
}
else{
document.getElementById('zone').value = event.x ;
document.getElementById('zone1').value = event.y;
}
}
}
La fonction dectctMouse me donne la position X et Y dans le navigateur mais moi j'aimerai un fonction qui me donne le numero de ligne pour X par exmple et pour Y une position.
Si vous avec une fonction javascript je suis preneur.
Voila merci
# <script type="text/javascript">
# function getSelectedText(){
# if (window.getSelection){
# var str = window.getSelection();
# }else if (document.getSelection){
# var str = document.getSelection();
# }else {
# var str = document.selection.createRange().text;
# }
# return str;
# }
</script>
function detectMouse(e){
if(parseInt(navigator.appVersion) >=4){
if(navigator.appName == 'Netscape'){
document.getElementById('zone').value = e.pageX ;
document.getElementById('zone1').value = e.pageY;
}
else{
document.getElementById('zone').value = event.x ;
document.getElementById('zone1').value = event.y;
}
}
}
La fonction dectctMouse me donne la position X et Y dans le navigateur mais moi j'aimerai un fonction qui me donne le numero de ligne pour X par exmple et pour Y une position.
Si vous avec une fonction javascript je suis preneur.
Voila merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
merci bcp pour ton code mais cela ne fonctionne pas ou j'ai du mal a le faire fonctionner pourrait tu me donner un exemple d'utilisation stp?
Je te remercie d'avance
merci bcp pour ton code mais cela ne fonctionne pas ou j'ai du mal a le faire fonctionner pourrait tu me donner un exemple d'utilisation stp?
Je te remercie d'avance
kanakus
Messages postés
20
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
25 juin 2009
4
15 nov. 2007 à 15:05
15 nov. 2007 à 15:05
bonjour,
J'ai un petit pb, je voudrais que qd l'utilisateur qui est sur ma page internet selectionne du texte, je puisse le recupere jusqu'a la tout fonctionne, j'utilise la fonction getSlectedText. Mainterant je voudrais lors de la selection que je puisse mettre des balises au debut de la selection et à la fin. Je sais que avec range et la methode surroundContext ca devrait marcher masi chez moi ca ne focntionne pas.
exemple: toto a faim. si mon utilisateur selectionne toto j'aimerai avoir <titi>toto</titi> a faim.
Je vosu remercie d'avance.
J'utilise javascript et Firefox 2.0.0.9
Voila mon code:
function selection(){
var startNode;
var newNode;
if (window.getSelection){
var str = window.getSelection();
alert (str);
range = document.createRange();
newNode = document.createElement("titi");
node = document.getElementsByTagName("div").item(0);
str.selectNode (node);
str.surroundContents(newNode);
alert (str);
/
}else if (document.getSelection){
var str = document.getSelection();
}else {
var str = document.selection.createRange().text;
}
return str;
}
J'ai un petit pb, je voudrais que qd l'utilisateur qui est sur ma page internet selectionne du texte, je puisse le recupere jusqu'a la tout fonctionne, j'utilise la fonction getSlectedText. Mainterant je voudrais lors de la selection que je puisse mettre des balises au debut de la selection et à la fin. Je sais que avec range et la methode surroundContext ca devrait marcher masi chez moi ca ne focntionne pas.
exemple: toto a faim. si mon utilisateur selectionne toto j'aimerai avoir <titi>toto</titi> a faim.
Je vosu remercie d'avance.
J'utilise javascript et Firefox 2.0.0.9
Voila mon code:
function selection(){
var startNode;
var newNode;
if (window.getSelection){
var str = window.getSelection();
alert (str);
range = document.createRange();
newNode = document.createElement("titi");
node = document.getElementsByTagName("div").item(0);
str.selectNode (node);
str.surroundContents(newNode);
alert (str);
/
}else if (document.getSelection){
var str = document.getSelection();
}else {
var str = document.selection.createRange().text;
}
return str;
}
kanakus
Messages postés
20
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
25 juin 2009
4
15 nov. 2007 à 15:51
15 nov. 2007 à 15:51
Bonjour,
merci de te pencher sur mon pb. Non je n'ai pas d'erreur le seul truc c'est qu'il ne me renvoie pas les balises apres la selection.
function selection(){
var startNode;
var newNode;
var range;
if (window.getSelection){
var str = window.getSelection();
alert (str);
range = document.createRange();
newNode = document.createElement("p");
alert(newNode);
node = document.getElementsByTagName("div").item(0);
alert(node);
range.selectNode(node);
range.surroundContents(newNode);
}else if (document.getSelection){
var str = document.getSelection();
}else {
var str = document.selection.createRange().text;
}
return str;
}
merci de te pencher sur mon pb. Non je n'ai pas d'erreur le seul truc c'est qu'il ne me renvoie pas les balises apres la selection.
function selection(){
var startNode;
var newNode;
var range;
if (window.getSelection){
var str = window.getSelection();
alert (str);
range = document.createRange();
newNode = document.createElement("p");
alert(newNode);
node = document.getElementsByTagName("div").item(0);
alert(node);
range.selectNode(node);
range.surroundContents(newNode);
}else if (document.getSelection){
var str = document.getSelection();
}else {
var str = document.selection.createRange().text;
}
return str;
}
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
920
15 nov. 2007 à 16:23
15 nov. 2007 à 16:23
je n'ai pas le temps de m'y pencher davantage pour le; moment mais regarde bien ton code.
je pense que tu ne modifies 'str' nul part dans la première condition.
donc tu le renvoies tel que tu l'as reçu de 'window.getSelection()'.
je pense que tu ne modifies 'str' nul part dans la première condition.
donc tu le renvoies tel que tu l'as reçu de 'window.getSelection()'.
function selection(){ var startNode; var newNode; var range; if (window.getSelection){ var str = window.getSelection(); alert (str); range = document.createRange(); newNode = document.createElement("p"); alert(newNode); node = document.getElementsByTagName("div").item(0); alert(node); range.selectNode(node); range.surroundContents(newNode); /* il faudrait mettre le résultat dans 'str', non ? */ } else if (document.getSelection){ var str = document.getSelection(); } else { var str = document.selection.createRange().text; } return str; }
kanakus
Messages postés
20
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
25 juin 2009
4
15 nov. 2007 à 17:50
15 nov. 2007 à 17:50
Bonjour,
Si je modifie mon str je modifie ma selection alors que je ne veux pas modier ma selection je veux modifier le contenu de ma page html avec la fonction surroundContext(). Je sais pas si j'ai ete clair. Si tu vx plus de presision:
<HTML>
<head>
<script>
function selection(){
var startNode;
var newNode;
var range;
if (window.getSelection){
var str = window.getSelection();
alert (str);
range = document.createRange();
newNode = document.createElement("p");
alert(newNode);
node = document.getElementsByTagName("div").item(0);
alert(node);
range.selectNode(node);
range.surroundContents(newNode);
}else if (document.getSelection){
var str = document.getSelection();
}else {
var str = document.selection.createRange().text;
}
return str;
}
</script>
</head>
<body onclick="selection()">
<h4 id="entry1196">Mamam va au marché</h4>
<div>Maman a achete</div>
<ol>
<li>des légumes</li>
<li>des fruits</li>
<li>des biscuits fait maison.</li>
</ol>
</body>
</html>
Si je selection mamam alors je veut obtenir cette page html:
</head>
<body onclick="selection()">
<h4 id="entry1196"><p>Mamam<p> va au marché</h4>
<div>Maman a achete</div>
<ol>
<li>des légumes</li>
<li>des fruits</li>
<li>des biscuits fait maison.</li>
</ol>
</body>
</html>
Si je modifie mon str je modifie ma selection alors que je ne veux pas modier ma selection je veux modifier le contenu de ma page html avec la fonction surroundContext(). Je sais pas si j'ai ete clair. Si tu vx plus de presision:
<HTML>
<head>
<script>
function selection(){
var startNode;
var newNode;
var range;
if (window.getSelection){
var str = window.getSelection();
alert (str);
range = document.createRange();
newNode = document.createElement("p");
alert(newNode);
node = document.getElementsByTagName("div").item(0);
alert(node);
range.selectNode(node);
range.surroundContents(newNode);
}else if (document.getSelection){
var str = document.getSelection();
}else {
var str = document.selection.createRange().text;
}
return str;
}
</script>
</head>
<body onclick="selection()">
<h4 id="entry1196">Mamam va au marché</h4>
<div>Maman a achete</div>
<ol>
<li>des légumes</li>
<li>des fruits</li>
<li>des biscuits fait maison.</li>
</ol>
</body>
</html>
Si je selection mamam alors je veut obtenir cette page html:
</head>
<body onclick="selection()">
<h4 id="entry1196"><p>Mamam<p> va au marché</h4>
<div>Maman a achete</div>
<ol>
<li>des légumes</li>
<li>des fruits</li>
<li>des biscuits fait maison.</li>
</ol>
</body>
</html>