4
respostas

Duvida

Teria a possibilidade de criar uma função para deixar uma parte do texto em negrito, itálico ou sublinhado ?

4 respostas

Olá Italo, tem sim, seria algo parecido com:

<script>

    function negrito (frase){
        document.write("<b>" + frase + "</b><br>")
    }

    function italico (frase){
        document.write("<i>" + frase + "</i><br>")
    }

    function sublinhado (frase){
        document.write("<u>" + frase + "</u><br>")
    }

    negrito("teste1");
    italico("teste2")
    sublinhado("teste3");

</script>

Oi Ítalo,

Também dá pra fazer ligando e desligando os estilos de decorations. Veja:

<meta charset="UTF-8">

<p id="nome">Ítalo</p>
<button id="bt_negrito">Negrito</button>
<button id="bt_italico">Itálico</button>
<button id="bt_sublinhado">Sublinhado</button>
<script>

    var nome = document.querySelector("p");

    var buttonNegrito = document.querySelector("#bt_negrito");
    var buttonItalico = document.querySelector("#bt_italico");
    var buttonSublinhado = document.querySelector("#bt_sublinhado");

    var negritoLigado = false;
    var italicoLigado = false;
    var sublinhadoLigado = false;

    function negrito() {
        if (negritoLigado == false) {
            nome.style.fontWeight = "bold";
            negritoLigado = true;
        } else {
            nome.style.fontWeight = "normal";
            negritoLigado = false;
        }    
    }

    function italico() {
        if (italicoLigado == false) {
            nome.style.fontStyle = "italic";
            italicoLigado = true;
        } else {
            nome.style.fontStyle = "normal";
            italicoLigado = false;
        }    
    }

    function sublinhado() {
        if (sublinhadoLigado == false) {
            nome.style.textDecoration = "underline";
            sublinhadoLigado = true;
        } else {
            nome.style.textDecoration = "";
            sublinhadoLigado = false;
        }    
    }


    buttonNegrito.onclick=negrito;
    buttonItalico.onclick=italico;
    buttonSublinhado.onclick=sublinhado;

</script>

Nesses casos seria todo o texto. o meu pensamento seria uma parte do texto, por exemplo. O meu nome é Ítalo e tenho 20 anos

Nesse caso Italo, seria só chamar cada função pra cada parte do texto que vc deseja o destaque, por exemplo:

normal ("Meu Nome é");
negrito(" Gabriel ");
italico("e tenho ");
sublinhado("24 anos!!");

Daria como saida:

Meu Nome é Gabriel e tenho 24 anos!!

("24 anos!!" estaria sublinhado, mas nao consegui representar aqui)

Obs.: a função normal seria definida apenas o document.write(frase);ou seja sem formatação.

Se te ajudei de alguma forma, marque esta publicação como resolvido!! ; )