Eu tenho uma variável do tipo string em javascript, essa string aparece na tela quando o usuário aperta um botão, eu preciso que uma palavra nessa string apareça sublinhada, como eu poderia fazer isso?
Se a tag < u > funcionasse em js seria algo do tipo:
<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>Teste</title><scripttype="text/javascript">window.onload=function(){varsublinha=document.getElementById("txt");varbotao=document.getElementById("botao");botao.onclick=function(){sublinha.style="text-decoration: underline";};};</script></head><body><p>'Lorem <span id="txt">ipsum</span> dolor sit amet'</p><inputtype="button"id="botao"value="botão"/></body></html>
R
roboom
Cara, muito obrigado, funciona sim!
Porém eu estou usando uma função que escreve o texto na tela com efeito de máquina de escrever.
Eu deixo o campo de texto vazio e preencho ele através da função JS. Eu uso uma variável do tipo string pra guardar o texto que vai ser escrito, algo do tipo:
<h1id="t1"></h1><!-- campo de texto vazio -->
vari=0;
vartxt='Seunomesublinhado.';
varspeed=50;
functiontypeWriter(){
if(i< txt.length){document.getElementById("t1").innerHTML+=txt.charAt(i);i++;setTimeout(typeWriter,speed);}}//funçãoparapreencherocampocomefeitodemaquinadeescrever
Ou seja, eu teria que achar um jeito de salvar a variável ‘txt’ com a palavra “sublinhado” sublinhada.
Existe um jeito de sublinhar uma palavra de uma string?
<!DOCTYPEhtml><html><head><metaname="description"content="[Efeito de maquina de escrever em JavaScript]"><metacharset="utf-8"><title>Máquinadeescrever</title><scripttype="text/javascript">window.onload=function(){vartxtTitulo='Francisco Chaves. Tecnologia com bits codificados.';vartxt1=document.getElementById("titulo");varspeed=100;varcont=0;functiontypeWriter(){if(cont<txtTitulo.length){txt1.innerHTML+="<u>"+txtTitulo.charAt(cont)+"</u>";cont++;setTimeout(typeWriter,speed);}else{cont=0;}}typeWriter();};</script></head><body><h1id="titulo"></h1></body></html>
<h1id="titulo"></h1><script>window.onload=function(){vartxtTitulo='Francisco Chaves. Tecnologia com bits codificados.';vartxt1=document.getElementById("titulo");varspeed=100;varcont=0;functiontypeWriter(){if(cont<txtTitulo.length){if(cont>=10&&cont<=15){if(cont==10){txt1.innerHTML+='<strong id="negrito">'+txtTitulo.charAt(cont);cont++;}elseif(cont<=15){varnegrito=document.querySelector('#negrito');negrito.innerHTML+=txtTitulo.charAt(cont);cont++;}}else{txt1.innerHTML+=txtTitulo.charAt(cont);cont++;}setTimeout(typeWriter,speed);}}typeWriter();};</script>
R
roboom
Puts então basicamente tenho que contar os caracteres e sublinhar manualmente a parte do texto que eu quero;
Seria tão mais prático se pudéssemos usar tags pra fazer isso dentro das variáveis string por exemplo.