Nunca manjei muito de js hehehe ... mas mesmo assim com o pouco que sei estou montando um sisteminha tipo bbcode ... mas sem tags do tipo e ... ele insere o codigo html diretto ... tipo <b> e </b> ...
Mas tipo .. qdo clica no botao BOLD pra deixar negrito ... e em nenhum outro vai ... nao imprimi a tag na test area que chma pagina ...
se alguem puder ajudar eu agradeço ...
código js (ah, ele olha se tem coisa selecionada ou nao)
<script language="javascript">
<!--
function texto(acao){
// pegando o texto selecionado
var selecionado = window.document.selection.createRange().text;
var original = window.document.form.pagina.value;
// verifica se tem algo selecionado
if (selecionado.length==0){
if(acao=='font_family')
var texto = prompt("Digite seu texto", "");
var fonte = window.document.form.font_family.value;
var texto2 = "<font style='font-family:"+fonte+";'>"+texto+"</font>";
}
if(acao=='font_size')
var texto = prompt("Digite seu texto", "");
var tamanho = window.document.form.font_size.value;
var texto2 = "<font style='font-size:"+tamanho+";'>"+texto+"</font>";
}
if(acao=='font_color')
var texto = prompt("Digite seu texto", "");
var cor = window.document.form.font_color.value;
var texto2 = "<font style='font-color:"+cor+";'>"+texto+"</font>";
}
if(acao=='aling_left')
var texto = prompt("Digite seu texto", "");
var texto2 = "<div aling='left'>"+texto+"</font>";
}
if(acao=='aling_center')
var texto = prompt("Digite seu texto", "");
var texto2 = "<div aling='center'>"+texto+"</font>";
}
if(acao=='aling_right')
var texto = prompt("Digite seu texto", "");
var texto2 = "<div aling='right'>"+texto+"</font>";
}
if(acao=='aling_justify')
var texto = prompt("Digite seu texto", "");
var texto2 = "<div aling='justify'>"+texto+"</font>";
}
if(acao=='negrito')
var texto = prompt("Digite seu texto", "");
var texto2 = "<b>"+texto+"</b>";
}
if(acao=='italico')
var texto = prompt("Digite seu texto", "");
var texto2 = "<i>"+texto+"</i>";
}
if(acao=='sub_linhado')
var texto = prompt("Digite seu texto", "");
var texto2 = "<u>"+texto+"</u>";
}
if(acao=='http')
var url = prompt("Digite o endereço destino", "");
var texto = prompt("Digite um texto", "Clique aqui.");
var texto2 = "<a href='"+url+"'>"+texto+"</a>";
}
if(acao=='email')
var email = prompt("Digite o e-mail", "");
var texto = prompt("Digite um texto", "Meu e-mail.");
var texto2 = "<a href='malito:"+email+"'>"+texto+"</a>";
}
if(acao=='imagem')
var local = prompt("Digite o local da imagem", "");
var texto2 = "<img src='"+local+"'>";
}
if(acao=='flash')
var local = prompt("Digite o local do flash", "");
var texto2 = "<embed src='"+local+"' quality='high' pluginspage='http://www.macromedi.../getflashplayer' type='application/x-shockwave-flash'></embed>";
}
window.document.form.pagina.value=original+texto2;
window.document.form.pagina.focus();
}
else{
//novo texto
var formatado = "";
var texto = "";
var textoI = "";
var textoF = "";
if(acao=='font_family')
var fonte = window.document.form.font_family.value;
textoI = "<font style='font-family:"+fonte+";'>";
textoF = "</font>";
}
if(acao=='font_size')
var tamanho = window.document.form.font_size.value;
textoI = "<font style='font-size:"+tamanho+";'>";
textoF = "</font>";
}
if(acao=='font_color')
var cor = window.document.form.font_color.value;
textoI = "<font style='font-color:"+cor+";'>";
textoF = "</font>";
}
if(acao=='aling_left')
textoI = "<div aling='left'>";
textoF = "</font>";
}
if(acao=='aling_center')
textoI = "<div aling='center'>";
textoF = "</font>";
}
if(acao=='aling_right')
textoI = "<div aling='right'>";
textoF = "</font>";
}
if(acao=='aling_justify')
textoI = "<div aling='justify'>";
textoF = "</font>";
}
if(acao=='negrito')
textoI = "<b>";
textoF = "</b>";
}
if(acao=='italico')
textoI = "<i>";
textoF = "</i>";
}
if(acao=='sublinhado')
textoI = "<u>";
textoF = "</u>";
}
if(acao=='http')
var url = prompt("Digite o endereço destino", "");
textoI = "<a href='"+url+"'>";
textoF = "</a>";
}
if(acao=='email')
var email = prompt("Digite o e-mail", "");
textoI = "<a href='malito:"+email+"'>";
textoF = "</a>";
}
if(acao=='imagem')
var local = prompt("Digite o local da imagem", "");
textoI = "<img src='"+local+"'>";
textoF = "";
}
if(acao=='flash')
var local = prompt("Digite o local do flash", "");
textoI = "<embed src='"+local+"' quality='high' pluginspage='http://www.macromedi.../getflashplayer' type='application/x-shockwave-flash'></embed>";
textoF = "";
}
texto = textoI+selecionado+textoF;
formatado = (original.replace(selecionado, texto));
window.document.form.pagina.value = formatado;
}
}
-->
</script>
Exemplo do botao ... e chamada em selet:
botao:
<input type="button" value="Bold" class="bot" onClick="java script:texto('negrito')">
Select ta sendo assim:
<select name="fonte" id="fonte" onChange="java script:texto('fonte')">
...
é isso ae ... desde ja obrigado a todos
fuizz