gregroar
Messages postés42Date d'inscriptionsamedi 13 juin 2009StatutMembreDernière intervention19 novembre 2010
-
19 nov. 2010 à 21:11
Le grand Jisay
Messages postés100Date d'inscriptionmardi 8 mai 2007StatutMembreDernière intervention18 février 2011
-
24 nov. 2010 à 09:31
Bonjour, je m'inspire de http://www.javascriptfr.com/codes/SAISIE-WYSIWYG_24237.aspx, mixée à un tutoriel du site du zéro.
Pouriez vous m'aider?
J'ai essayé d'ajouter l'insertion de smileys et de liens et images via une fenetre popup javascript, mais je n'arrive pas à insérer dans le textarea, je ne comprends pas bien quelle est la variable qui contient le texte html.
Est-ce Fen, tmp, document, txt?
je bloque depuis plusieurs jours.
si vous avez le temps de m'aider, je vous enverrais ma source.
mon code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML Lang= "fr">
function insertTag(startTag, endTag, textareaId, tagType) {
var field = document.getElementById(textareaId);
var scroll = field.scrollTop;
field.focus();
/* Partie 1 : on récupère la sélection */
if (window.ActiveXObject) {
var textRange = document.selection.createRange();
var currentSelection = textRange.text;
} else {
var startSelection = field.value.substring(0, field.selectionStart);
var currentSelection = field.value.substring(field.selectionStart, field.selectionEnd);
var endSelection = field.value.substring(field.selectionEnd);
}
/* Partie 2 : on analyse le tagType */
if (tagType){ switch (tagType){
case "lien":
endTag = "</lien>";
if (currentSelection) { // Il y a une sélection
if (currentSelection.indexOf("http://") 0 || currentSelection.indexOf("https://") 0 || currentSelection.indexOf("ftp://") == 0 || currentSelection.indexOf("www.") == 0) {
// La sélection semble être un lien. On demande alors le libellé
var label = prompt("Texte du lien :") || "";
startTag = "<lien url="" + currentSelection + "">";
currentSelection = label;
} else {// La sélection n'est pas un lien, donc c'est le libelle. On demande alors l'URL
var URL = prompt("Quelle est l'url du lien ?");
startTag = "<lien url="" + URL + "">";
}} else { // Pas de sélection, donc on demande l'URL et le libelle
var URL = prompt("Quelle est l'url du lien ?") || "";
var label = prompt("Texte du lien :") || "";
startTag = "<lien url="" + URL + "">";
currentSelection = label;
}break;
case "image":
endTag = " />";
if (currentSelection) { // Il y a une sélection
if (currentSelection.indexOf("http://") 0 || currentSelection.indexOf("https://") 0 || currentSelection.indexOf("ftp://") == 0 || currentSelection.indexOf("www.") == 0) {
// La sélection semble être un lien. On demande alors le libellé
var label = prompt("Description de l'image :") || "";
startTag = "_<', ':pirate:', ':zorro:', ':honte:', ':soleil:', '\'\\(', ':waw:', ':\\)', ':D', ';\\)', ':p', ':lol:', ':euh:', ':\\(', ':o', ':mechant:', 'o_O', '\\^\\^', ':\\#');
<!--
pour FF :
execCommand("createlink",false,"http://....")
-->
<!--—————————————————————————————————————————————————————————————————-->
<!-- laisser les couleurs sont forme rgb=(r,g,b)
########################################### -->
Le grand Jisay
Messages postés100Date d'inscriptionmardi 8 mai 2007StatutMembreDernière intervention18 février 20112 24 nov. 2010 à 09:31
Salut,
Je ne connais pas ce WYSIWYG.
Déjà, pourrais-tu poster ton code via le flag balise de l'éditeur. Je n'ai meme pas envie de le lire tellement il est mal structuré et ce n'est pas à moi de le faire.
Ensuite, je te conseillerai peut-être d'utiliser un éditeur un peu plus connu genre TinyMCE ou CKEditor qui sont bien documentés.