Accueil > Forum > > > > .selectionStart dans un Iframe
.selectionStart dans un Iframe
jeudi 5 avril 2007 à 13:16:48 |
.selectionStart dans un Iframe

bultez
|
Bonjour à toutes et à tous,
je ne parviens pas à utiliser .selection??? dans un iframe ( avec FF/M-Meleon... donc )
<body onload="init();"> <iframe style=" width:98%; height:40%; border:0; background-color:#FFFFDD;" name="saisie" id="saisie"></iframe> <script type="text/javascript"> var Fen,Champ; function init() { Fen=document.getElementById('saisie').contentWindow; Champ=document.getElementById('saisie').contentDocument; Champ.designMode='on'; Fen.focus(); } function siFF() { var tmp = document.getElementById('saisie'); // erreurs var tmp=Fen; // " var tmp=Champ; // " ... // j'ai essayé pas mal d'autres choses, mais je ne trouve pas ! alert(tmp.selectionEnd); // par exemple ! //=======************* } </script> <input type="button" onclick="siFF()" value="Affiche"> </body>
si vous savez ce serait sympa de me le dire. il faut faire autrement ? merci d'avance.
|
|
jeudi 5 avril 2007 à 13:20:34 |
Re : .selectionStart dans un Iframe

bultez
|
j'ai oublié de préciser que le but du jeu c'est de remplacer ces caractères sélectionnés par "autre chose". avec IE on ferait : sel = Champ.selection.createRange(); sel.text="tout ce qu'on veut"; pour donner une idée.
|
|
jeudi 5 avril 2007 à 15:40:23 |
Re : .selectionStart dans un Iframe

FREMYCOMPANY
|
Code:
function getFrameWindow(iframe) { return iframe.window?iframe.window:iframe.contentWindow; }
function getFrameDocument(iframe) { return getFrameWindow(iframe).document; }
|
|
jeudi 5 avril 2007 à 16:16:26 |
Re : .selectionStart dans un Iframe

bultez
|
je suppose en liaison avec la source que tu as déposée...
|
|
jeudi 5 avril 2007 à 16:54:35 |
Re : .selectionStart dans un Iframe

bultez
|
mince, mes messages ont disparus ?
je remet alors ! en utilisant le script mis par FremyCompany ici : http://www.javascriptfr.com/codes/DOCUMENT-SELECTION-POUR-FF-FIREFOX_42090.aspx
<Script Type="Text/JavaScript" Src="fremy.js"></Script> <body onload="init();"> <iframe style=" width:98%; height:40%; border:0; background-color:#FFFFDD;" name="saisie" id="saisie"></iframe> <script type="text/javascript"> function init() { Fen=document.getElementById('saisie').contentWindow; Champ=document.getElementById('saisie').contentDocument; Champ.designMode='on'; Fen.focus(); } function getFrameWindow(iframe) { return iframe.window?iframe.window:iframe.contentWindow; } function getFrameDocument(iframe) { return getFrameWindow(iframe).document; } function siFF() { var iframeWindow=getFrameWindow(document.getElementById('saisie')); var iframeSelection = iframeWindow.document.selection if (!iframeSelection) { iframeSelection=new SelectionObject(iframeWindow); } var iframeRange=iframeSelection.createRange(); alert(iframeRange.text); // affiche "undefined"
alert(iframeRange.text); // affiche "no selection"
iframeRange.text="remplace"; } </script> <input type="button" onclick="siFF()" value="Affiche"> </body>
|
|
jeudi 5 avril 2007 à 17:10:44 |
Re : .selectionStart dans un Iframe

PetoleTeam
|
B
ien le Bonjour The Bultez Alors ce projet avance...
Faire tout simplement var O_Edit = document.getElementById("saisie"); var szSelect = O_Edit.contentDocument.getSelection();
voir ce lien et les sous liens mais je penses que cela est déjà fait ;0)
|
|
jeudi 5 avril 2007 à 17:26:21 |
Re : .selectionStart dans un Iframe

FREMYCOMPANY
|
Bon ben voici un exemple concret de mon code avec un iframe ;-) <html> <head> <script src="document.selection.js"></script> <script><!-- var frame, frameWindow, frameDocument, frameSelection; function loadIframe() { if (getFrameDocument(document.getElementById("frame1"))) { frame = document.getElementById("frame1"); frameWindow = getFrameWindow(frame); frameDocument = frameWindow.document; frameSelection = frameDocument.selection if (!frameSelection) { frameSelection = new SelectionObject(frameWindow); } frameDocument.designMode="on"; } else { setTimeout(loadIframe, 150); } } function getFrameWindow(iframe) { return iframe.window?iframe.window:iframe.contentWindow; }
function getFrameDocument(iframe) { try { return getFrameWindow(iframe).document; } catch (ex) { return null; } } function replaceSelection() { var textRange = frameSelection.createRange(); var el = document.getElementById("t_html"); textRange.htmlText=el.value; el.value=""; } --></script> </head> <body onload="loadIframe()"> <iframe src="about:blank" id="frame1"></iframe> <form id="replaceForm" action="javascript:replaceSelection()"> <textarea id="t_html" name="t_html"></textarea> <input type="submit" /> </form> </body> </html>
Pourquoi notre PC fait-il toujours ce qu'on lui demande ... et pas ce qu'on veut ???
|
|
jeudi 5 avril 2007 à 17:36:15 |
Re : .selectionStart dans un Iframe

FREMYCOMPANY
|
Excuse moi, ce code n'était pas compatbile avec Internet Explorer (pour une raison un peu mistérieuse)
Je l'ai corrigé.
<html> <head> <script src="document.selection.js"></script> <script><!-- var frame, frameWindow, frameDocument; function loadIframe() { if (getFrameDocument(document.getElementById("frame1"))) { frame = document.getElementById("frame1"); frameWindow = getFrameWindow(frame); frameDocument = frameWindow.document; frameDocument.designMode="on"; } else { setTimeout(loadIframe, 150); } } function getFrameWindow(iframe) { return iframe.window?iframe.window:iframe.contentWindow; }
function getFrameDocument(iframe) { try { return getFrameWindow(iframe).document; } catch (ex) { return null; } } function replaceSelection() { var textRange = frameDocument.selection.createRange() if (!textRange) { textRange = new SelectionObject(frameWindow).createRange(); } var el = document.getElementById("t_html"); textRange.text=el.value; el.value=""; } --></script> </head> <body onload="loadIframe()"> <iframe src="about:blank" id="frame1"></iframe> <form id="replaceForm" action="javascript:replaceSelection()"> <textarea id="t_html" name="t_html"></textarea> <input type="submit" /> </form> </body> </html>
|
|
jeudi 5 avril 2007 à 18:38:33 |
Re : .selectionStart dans un Iframe

PetoleTeam
|
I'm very SORRY but
...
Faire tout simplement var szSelect = O_Edit.contentWindow.getSelection();//pour avoir accés aux propriétés
;0)
|
|
vendredi 6 avril 2007 à 07:20:11 |
Re : .selectionStart dans un Iframe

bultez
|
salut PetoleTeam,
intéressant... mais je ne suis pas doué !!!
<body onload="init();"> <iframe style=" width:98%; height:40%; border:0; background-color:#FFFFDD;" name="saisie" id="saisie"></iframe> <script type="text/javascript"> function init() { Fen=document.getElementById('saisie').contentWindow; Champ=document.getElementById('saisie').contentDocument; Champ.designMode='on'; O_Edit = document.getElementById("saisie"); Fen.focus(); } function siFF() { var t1 = O_Edit.contentDocument.getSelection(); var t2 = O_Edit.contentWindow.getSelection(); alert(O_Edit.contentDocument.selectionStart); //undefined alert(t1); //affiche texte sélectionné t1="remplacer par n'importe quoi"; //ne remplace pas alert(t1.selectionStart); //undefined alert(t2); //affiche le texte sélectionné t2="remplacer par n'importe quoi"; //ne remplace pas alert(t2.selectionStart); //undefined } </script> <input type="button" onclick="siFF()" value="Affiche"> </body>
>>Alors ce projet avance... doucement... entre 25 autres choses. la conception est finie, avec IE je pourrais terminer, il faudrait que cette fonctionnalité marche avec FF ( et consors ) pour que je finalise
si tu jettes un oeil pour me dire où me plante-je ?
le but du jeu c'est de remplacer ces caractères sélectionnés par "autre chose" avec IE on ferait : sel = Champ.selection.createRange(); sel.text="tout ce qu'on veut"; pour donner une idée.
|
|
Cette discussion est classée dans : champ, var, saisie, tmp, fen
Répondre à ce message
Sujets en rapport avec ce message
Controle formulaire paranoiaque [ par ma2x ]
Bonjour à tousIl m'a été demandé dans le cadre du boulot de mettre en oeuvre une interface de saisie de données soumis à des controles de toutes parts
Eval [ par stephbb75 ]
Salut tous,Une tit question sur eval.Voila ce que je veut faire :J'ai des variablesvar v1 = toto;var v2 = titi;...Et sur saissie d'un formulaire, je v
Changment automatique de champ HTML [ par cjed ]
Salut,J'aurais voulu savoir s'il est possible d'avoir un changement automatique de champ HTML (champ de numéro d'ordre suivant) à chaque fin de saisie
probleme script de controle de saisie [ par fredmorvant29 ]
bonjour, je suis en train de réaliser le controle de saisie sur mon formulaire.je souhaite tester deux choses : *que l'email soit valide (ça ça mar
Recherche sur plusieurs champ avec saisie automatique [ par stained ]
Bonjour,Voila j'aimerai effectuer une saisie automatique sur plusieurs champs dépendant (Nom contact + Telephone Contact) chargé dans un tableau javas
Background champ de saisie en rouge [ par talking ]
Voilà bonjour tout le monde Donc voici ma question:J'aimerai savoir comment je peux faire en Javascript pour mettre le background d'un champ de saisie
Fonction javascript [ par righton ]
Bonjour voici une fonction pour mettre du bold ou de l'italic dans un champ de saisie :function format(f) { var str = document.selection.createRange(
var elements name et champ [ par rafou77 ]
bonjour voilà javascript c'est pas mon truc mais pourriez vous m'aider car j'ai un champ qui fait référence à mnt_credit qui est dans un script ici:fo
ca coince avec cette fonction [ par B e N z ]
salut tt le monde enfaite moi je suis en stage ds une société et on m'as charger de faire un formulaire pour leur site intranet mé le blem c que j'ava
compter le nombre de radio button [ par misterdarth ]
Bonjour,Lors de la saisie d'un formulaire, je cherche à tester certains champs afin de m'assurer que l'utilisateur n'a pas mis n'importe quoi.Dans ce
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|