Document.selection pour ff (firefox)

Soyez le premier à donner votre avis sur cette source.

Vue 26 025 fois - Téléchargée 643 fois

Description

Aucune description n'est fournie pour ce projet

Codes Sources

A voir également

Ajouter un commentaire Commentaires
aliestrella Messages postés 1 Date d'inscription vendredi 5 mars 2010 Statut Membre Dernière intervention 22 avril 2010
22 avril 2010 à 01:10
Salut!!!

Merci Merci Merci beaucoup vraiment pour le code :D il y a longtemps que je cherche quelque chose comme ça. J'avais le même problème (ça marchait en IE mais pas en FF). Après avoir découvert ça je suis heureuse. J'aimerais bien programmer comme toi ;) FÉLICITATION!

Bonne journée :)
cs_Killan Messages postés 46 Date d'inscription jeudi 10 janvier 2002 Statut Membre Dernière intervention 5 février 2010
5 févr. 2010 à 11:28
D'accord, je vais voir ça merci.
FREMYCOMPANY Messages postés 276 Date d'inscription jeudi 12 janvier 2006 Statut Membre Dernière intervention 22 décembre 2008
4 févr. 2010 à 17:59
Sous IE, le code ici n'est pas exécuté. On utilise le code par défaut de document.selection. Tu devrais donc regarder sur la MSDN ce qu'ils disent à ce sujet...
cs_Killan Messages postés 46 Date d'inscription jeudi 10 janvier 2002 Statut Membre Dernière intervention 5 février 2010
4 févr. 2010 à 16:15
Bonjour et merci déjà pour ce code magnifique.

J'ai un soucis sous IE8 dans le cas d'une iframe (cf msg yves2929 du 09/11/200).

J'ai modifié ton setter comme suit :

ControlRangeObject.prototype.__defineSetter__("htmlText",function(value) {
var range = this._range;
range.deleteContents();
range.insertNode(value)
});

Pour envoyer du html directement sans avoir la balise que tu créais qui parasitait.

Et je fais ça :

tr = pa.getSelection(pa.selectobj);
var e = document.createElement('b');
e.innerHTML = tr.text;
tr.htmlText = e;

J'ai bien un objet textRange mais IE8 dit que htmlText n'existe pas, ça plante à la dernière ligne, le reste ça a l'air d'aller.

Une idée ?

Merci d'avance.
cs_yves2929 Messages postés 2 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 9 novembre 2009
9 nov. 2009 à 17:24
voici donc ce qu'il faut faire avec une iframe.
merci d'avoir repondu aussi vite.

<script type="text/javascript" charset="utf-8">
var textRange = null;

function getItemSelection(edid) {
try {
textRange = getFrameSelection(new SelectionObject(getFrameWindow(document.getElementById(edid)))).createRange();
} catch (ex) {}
}

function setHtmlItemSelection(str) {
try {
if (textRange != null) {
//textRange.text = str;
if (textRange.pasteHTML) {
textRange.pasteHTML(str);
textRange.select();
} else {
textRange.htmlText = str;
}
}
} catch (ex) {}
}

function getFrameSelection(win) {
return win.document.selection? win.document.selection : win;
}

function getFrameWindow(iframe) {
return iframe.window? iframe.window : iframe.contentWindow;
}

</script>
Afficher les 47 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.