Bonjour, lorsque je clique sur mon boutton gras, le code [b][/b] ne s'affiche pas dans le textarea.
Je ne comprend pas le probleme.
Voici le code dem on bbcode.js :
// Fonctions pour le BBcode var clientPC = navigator.userAgent.toLowerCase(); // Get client info var clientVer = parseInt(navigator.appVersion); // Get browser version var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1)); var is_nav = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1)
&& (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1)
&& (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1)); var is_moz = 0; var is_win = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1)); var is_mac = (clientPC.indexOf("mac")!=-1); var timer=0; var ptag=String.fromCharCode(5,6,7); function visualisation(){
t=document.formu.texte.value
t=code_to_html(t) if(document.getElementById) document.getElementById("previsualisation").innerHTML=t if(document.formu.auto.checked) timer=setTimeout(visualisation,1000) } function automatique(){ if(document.formu.auto.checked) visualisation() } function code_to_html(t){
t=nl2khol(t)
t=remplace_tag(/:sourire:/g, '<img src="images/smile/sourire.gif">',t)
t=remplace_tag(/:triste:/g, '<img src="images/smile/triste.gif">',t)
t=remplace_tag(/:colere:/g, '<img src="images/smile/colere.gif">',t)
t=remplace_tag(/:rigole:/g, '<img src="images/smile/rigole.gif">',t)
t=remplace_tag(/:decu:/g, '<img src="images/smile/decu.gif">',t)
t=remplace_tag(/:langue:/g, '<img src="images/smile/langue.gif">',t)
t=remplace_tag(/:surpris:/g, '<img src="images/smile/surpris.gif">',t)
t=remplace_tag(/:cleinoeil:/g, '<img src="images/smile/cleinoeil.gif">',t)
t=remblaie(t) // balise Gras
t=deblaie(/(\[\/b\])/g,t)
t=remplace_tag(/\[b\](.+)\[\/b\]/g,'<b>$1</b>',t)
t=remblaie(t) // balise Italique
t=deblaie(/(\[\/i\])/g,t)
t=remplace_tag(/\[i\](.+)\[\/i\]/g,'<i>$1</i>',t)
t=remblaie(t) // balise souligné
t=deblaie(/(\[\/u\])/g,t)
t=remplace_tag(/\[u\](.+)\[\/u\]/g,'<u>$1</u>',t)
t=remblaie(t) // balise quote
t=deblaie(/(\[\/quote\])/g,t)
t=remplace_tag(/\[quote\](.+)\[\/quote\]/g,'<p class="quote">$1</p>',t)
t=remblaie(t) // balise Img
t=deblaie(/(\[\/img\])/g,t)
t=remplace_tag(/\[img\](.+)\[\/img\]/g,'<img src="$1"/>',t)
t=remblaie(t) // balise URL
t=remplace_tag(/\[url=([^\s<>]+)\](.+)\[\/url\]/g,'<a href="$1" target="_blank">$2</a>',t) // balise Color
t=deblaie(/(\[\/color\])/g,t)
t=remplace_tag(/\[color=(.+?)\](.+?)\[\/color\]/, '<font color=$1>$2</font>',t)
t=remblaie(t) // balise size
t=deblaie(/(\[\/size\])/g,t)
t=remplace_tag(/\[size=([+-]?[0-9])\](.+)\[\/size\]/g,'<font size="$1">$2</font>',t)
t=remblaie(t)
t=unkhol(t)
t=nl2br(t) return t }function deblaie(reg,t){
texte=new String(t); return texte.replace(reg,'$1\n'); } function remblaie(t){
texte=new String(t); return texte.replace(/\n/g,''); } function remplace_tag(reg,rep,t){
texte=new String(t); return texte.replace(reg,rep); } function nl2br(t){
texte=new String(t); return texte.replace(/\n/g,'<br/>'); } function nl2khol(t){
texte=new String(t); return texte.replace(/\n/g,ptag); } function unkhol(t){
texte=new String(t); return texte.replace(new RegExp(ptag,'g'),'\n'); } function countInstances(open,closed) { var opening = document.hop.contenu.value.split(open); var closing = document.hop.contenu.value.split(closed); return opening.length + closing.length - 2; } function TAinsert(text1,text2,contenu) { var ta = document.getElementById(contenu); if(document.selection){ var str = document.selection.createRange().text;
ta.focus(); var sel = document.selection.createRange(); if(text2!="") {
sel.text = text1 + sel.text + text2; } else {
sel.text = sel.text + text1; } } elseif(ta.selectionStart | ta.selectionStart == 0) { if(ta.selectionEnd > ta.value.length){ ta.selectionEnd = ta.value.length; } var firstPos = ta.selectionStart; var secondPos = ta.selectionEnd+text1.length;
ta.value=ta.value.slice(0,firstPos)+text1+ta.value.slice(firstPos);
ta.value=ta.value.slice(0,secondPos)+text2+ta.value.slice(secondPos);
ta.selectionStart = firstPos+text1.length;
ta.selectionEnd = secondPos;
ta.focus(); } else {// Opera var sel = document.hop.contenu; var instances = countInstances(text1,text2); if(instances%2 != 0 && text2 != ""){ sel.value = sel.value + text2; } else{ sel.value = sel.value + text1; } } } function bbfontstyle(bbopen, bbclose){ var txtarea = document.formu.texte; if((clientVer >= 4) && is_ie && is_win){
theSelection = document.selection.createRange().text; if(!theSelection){
txtarea.value += bbopen + bbclose;
txtarea.focus(); return; }
document.selection.createRange().text = bbopen + theSelection + bbclose;
txtarea.focus(); return; } elseif(txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0)) {
mozWrap(txtarea, bbopen, bbclose); return; } else {
txtarea.value += bbopen + bbclose;
txtarea.focus(); }
storeCaret(txtarea); }
function emoticon(text){ var txtarea = document.formu.text;
text = ' ' + text + ' '; if(txtarea.createTextRange && txtarea.caretPos){ var caretPos = txtarea.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
txtarea.focus(); }else{
txtarea.value += text;
txtarea.focus(); } }
function mozWrap(txtarea, open, close) { var selLength = txtarea.textLength; var selStart = txtarea.selectionStart; var selEnd = txtarea.selectionEnd; if(selEnd == 1 || selEnd == 2)
selEnd = selLength;
var s1 = (txtarea.value).substring(0,selStart); var s2 = (txtarea.value).substring(selStart, selEnd) var s3 = (txtarea.value).substring(selEnd, selLength);
txtarea.value = s1 + open + s2 + close + s3; return; }
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.