Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1360 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Mettre le Focus entre 2 balises

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mettre le Focus entre 2 balises

n°1120175
Badze
Aime les frites
Posté le 14-06-2005 à 23:42:23  profilanswer
 

Bonsoir à tous, encore une fois, je viens m'adresser à vous, les Savants :D.
 
Voici ce que jai fait il y a quelques temps
http://bibi35.free.fr/
 
quand on clic sur une icone, mon Focus (grace à JS) se met apres mes 2 balises. Voici mon code JS.
http://bibi35.free.fr/fonction.js
 
Je suis assez novice en JS, et je voudrai en fait que mon Focus se mette entre mes 2 balises.
Par exemple

Code :
  1. [imgs]|[/imgs]


 
Tout comme ce forum le fais, j'ai chercher un peux dans les sources de ce site, il faut dire que jai beaucoup de mal a me repéré dans tout ca.
 
Une petite aide serai la bienvenue, Merci

mood
Publicité
Posté le 14-06-2005 à 23:42:23  profilanswer
 

n°1120201
gm_superst​ar
Appelez-moi Super
Posté le 15-06-2005 à 00:46:39  profilanswer
 

Ben tu regardes le code source HTML de la page pour répondre, tu cherches le code qui correspond aux boutons, tu regardes la fonction JavaScript appelée dans le "onclick" et enfin tu cherches la fonction en question dans le fichier .js lié à la page.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°1120230
benji_100
Posté le 15-06-2005 à 01:55:16  profilanswer
 

Peut etre que moveStart peut t'aider :
http://msdn.microsoft.com/library/ [...] eStart.asp
 
recherche des exemples sur Googeul

n°1121177
Badze
Aime les frites
Posté le 15-06-2005 à 18:27:24  profilanswer
 

Voici le code pour le insert.

Code :
  1. function TAinsert(text1,text2) {
  2. var ta = document.getElementById('contenu');
  3. if (document.selection) {
  4.  var str = document.selection.createRange().text;
  5.  ta.focus();
  6.  var sel = document.selection.createRange();
  7.  if (text2!="" ) {
  8.   if (str=="" ) {
  9.    var instances = countInstances(text1,text2);
  10.    if (instances%2 != 0) sel.text = sel.text + text2;
  11.    else sel.text = sel.text + text1;
  12.   } else sel.text = text1 + sel.text + text2;
  13.  } else sel.text = sel.text + text1;
  14. } else if (ta.selectionStart || ta.selectionStart == 0) {
  15.  if (ta.selectionEnd > ta.value.length) ta.selectionEnd = ta.value.length;
  16.  var firstPos = ta.selectionStart;
  17.  var secondPos = ta.selectionEnd+text1.length;
  18.  var contenuScrollTop = ta.scrollTop;
  19.  ta.value=ta.value.slice(0,firstPos)+text1+ta.value.slice(firstPos);
  20.  ta.value=ta.value.slice(0,secondPos)+text2+ta.value.slice(secondPos);
  21.  ta.selectionStart = firstPos+text1.length;
  22.  ta.selectionEnd = secondPos;
  23.  ta.focus();
  24.  ta.scrollTop = contenuScrollTop;
  25. } else { // Opera
  26.  var sel = document.hop.contenu;
  27.  var instances = countInstances(text1,text2);
  28.  if (instances%2 != 0 && text2 != "" ) sel.value = sel.value + text2;
  29.  else sel.value = sel.value + text1;
  30. }
  31. }


 
Franchement je suis Out sur ce langage, plein de petite chose que je ne comprend pas, meme quasiment la totalité de ce script. Je n'aime pas JS, ce n'est pas ma tasse de thé.
Si on pouvais maider franchement. Merci


Message édité par Badze le 15-06-2005 à 18:30:33
n°1121221
Martius
il/lui
Posté le 15-06-2005 à 18:54:25  profilanswer
 

le secret est la ;)
 var sel = document.selection.createRange();

n°1121436
Badze
Aime les frites
Posté le 16-06-2005 à 01:58:07  profilanswer
 

hum hum, ouai mais non,  
I am a very very a big shit in javascript ( et anglais par ailleur aussi )  :pt1cable:  
 
Je voudrai faire un truc du genre,

Code :
  1. function truc(debut,fin) {
  2. document.getElementById('id-message').value=document.getElementById('id-message').value+debut;
  3. document.getElementById('id-message').focus();
  4. document.getElementById('id-message').value= document.getElementById('id-message').value+fin;
  5. }


 
Mais bien entendu ce focus, se met automatiquement en fin par défault.
createRange(); => je ne vois pas trop son fonctionnement et a quoi il sert précisement.
 
Je regarde sur certain tutoriel mais cela ne m'avance pas a grand chose pour mon petit cerveau.  :lol:


Message édité par Badze le 16-06-2005 à 02:01:59
n°1122631
gm_superst​ar
Appelez-moi Super
Posté le 17-06-2005 à 00:32:29  profilanswer
 

createRange() c'est ce qui permet de récupérer la sélection en cours ou d'en créer une nouvelle.
 
Car, je sais pas si tu as remarqué, mais les boutons ont 2 comportements :
 - si du texte est sélectionné ça ajoute les balises autour du texte sélectionné
 - si aucun texte n'est sélectionné, ça ajoute les balises et le curseur est placé entre les 2.
 
Le script est divisé en trois parties :
 - la première, avec document.selection.createRange() est utilisée par IE
 - la deuxième avec selectionStart et selectionEnd est pour Mozilla/Firefox
 - et la dernière, comme indiqué, est pour Opera.
 
Bref commence par te renseigner sur MSDN http://msdn.microsoft.com/library/ [...] _entry.asp pour IE, et là http://www.mozilla.org/docs/dom/domref/ pour Mozilla/Firefox
Un coup d'oeil sur les specs de JavaScript ne fera pas de mal non plus http://www.croczilla.com/~alex/ref [...] cript_ref/


Message édité par gm_superstar le 17-06-2005 à 00:32:55

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Mettre le Focus entre 2 balises

 

Sujets relatifs
Gestion du focus : Empecher un bouton de prendre le focus !?Comment mettre le focus sur une div précise ?
ordre des balises "title" et "charset" dans le "head"regexp :trouver les balises et meme celles avec des balises PHP dedans
XSL Probleme pour mettre deux tableaux cote a cote[CSS] balises a dans balise il
supprimer ce qu'il y a entre 2 balisescreateTextNode et balises HTML
Plus de sujets relatifs à : Mettre le Focus entre 2 balises


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR