le code Javascript :
var timer=0;
var ptag=String.fromCharCode(5,6,7);
function previsualisation() {
t=document.formulaire.textarea.value
t=code_to_html(t)
if (document.getElementById) document.getElementById("prev").innerHTML=t
if (document.formulaire.auto.checked) timer=setTimeout(previsualisation,1)
<!-- le "1" est le temps que met le texte à s´afficher, "1" : le texte s´affichera en même temps que l´on écrit (en s) -->
}
function automatique() {
if (document.formulaire.auto.checked) previsualisation() <!-- si on a cocher la case d´aperçu automatique -->
}
function code_to_html(t) {
t=nl2khol(t)
// balise Gras <!-- on lui dis que telles balises
correspondent à tels codes en HTML -->
t=deblaie(/(\[\/gras\])/g,t)
t=remplace_tag(/\[gras\](.+)\[\/gras\]/g,´<span style="font-weight: bold;">$1</span>´,t)
t=remblaie(t)
// balise Italic
t=deblaie(/(\[\/italic\])/g,t)
t=remplace_tag(/\[italic\](.+)\[\/italic\]/g,´<spa
n style="font-style: italic;">$1</span>´,t)
t=remblaie(t)
// balise Citation
t=deblaie(/(\[\/citation\])/g,t)
t=remplace_tag(/\[citation=([\s\S]*?)\](.+)\[\/cit
ation\]/g,´<strong>Citation $1 :</strong><div styl
e="border: 1px solid #000000; width: 50%; font-family: Verdana, \´Trebuchet MS\´, Tahoma, \´Times New Roman\´, Times, serif; text-align: left; font-size: 11px;" align="center">$2</div>´,t)
t=remblaie(t)
// balise Image
t=deblaie(/(\[\/image\])/g,t)
t=remplace_tag(/\[image\](.+)\[\/image\]/g,´<img s
rc="$1" />´,t)
t=remblaie(t)
// balise URL
t=deblaie(/(\[\/url\])/g,t)
t=remplace_tag(/\[\url=([\s\S]*?)\](.+)\[\/url\]/g
,´<a href="$1" target="_blank">$2</a>´,t)
t=remblaie(t)
// smilies Smile <!-- on oublie pas les smilies --
t=remplace_tag(/:d/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/langue.png" alt=":d" />´,t)
t=remplace_tag(/:D/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/smile.png" alt=":D" />´,t)
t=remplace_tag(/;/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/clin.png" alt=";" />´,t)
t=remplace_tag(/:magicien:/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/magicien.png" alt=":magicien:" />´,t)
t=remplace_tag(/o_O/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/blink.gif" alt="o_O" />´,t)
t=remplace_tag(/:colere2:/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/mechant.png" alt=":colere2:" />´,t)
t=remplace_tag(/:heu:/g,´<img
src="
http://siteduzero.com/Templates/images/smilie
s/unsure.gif" alt=":heu:" />´,t)
t=remblaie(t)
t=unkhol(t)
t=nl2br(t)
return t
}
<!-- tout le code qui suit c´est pour transformer toutes les balises, comme les preg_replace en PHP -->
function deblaie(reg,t) {
textarea=new String(t);
return textarea.replace(reg,´$1\n´);
}
function remblaie(t) {
textarea=new String(t);
return textarea.replace(/\n/g,´´);
}
function remplace_tag(reg,rep,t) {
textarea=new String(t);
return textarea.replace(reg,rep);
}
function nl2br(t) {
textarea=new String(t);
return textarea.replace(/\n/g,´<br/>´);
}
function nl2khol(t) {
textarea=new String(t);
return textarea.replace(/\n/g,ptag);
}
function unkhol(t) {
textarea=new String(t);
return textarea.replace(new RegExp(ptag,´g´),´\n´);
}
Voici le tuto ou je l´ai pris :
http://www.siteduzero.com/tuto-3-1982-1-creation-d-un-bbcode-et-apercu-en-direct.html