Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Fazendo o JS do texto na tela

Bom dia,

Tenho duas dúvidas. A primeira delas, no caso de aplicação para o projeto que o instrutor utilizou, é melhor utilizar o getAttribute() ou o dataset para alterar o valor de um atributo?

Segundo, ao invés de utilizar o innerHTML para inserir os textos nas telas dicâmicas, consegui fazer usando o nodeValue, qual é a melhor forma para fazer pensando no mercado de trabalho e em projetos reais hoje em dia?

switch (contexto) {
        case 'foco':
            titulo.childNodes[0].nodeValue = `Otimize sua produtividade,`;
            titulo.childNodes[3].nodeValue = `mergulhe no que importa`;
            break;

        case 'descanso-curto':
            titulo.childNodes[0].nodeValue = `Que tal dar uma respirada?`;
            titulo.childNodes[3].nodeValue = `Faça uma pausa curta!`;
            break;

        case 'descanso-longo':
            titulo.childNodes[0].nodeValue = `Hora de voltar à superfície.`;
            titulo.childNodes[3].nodeValue = `Faça uma pausa longa`;
            break;
        default:
            break;
    }

Agradeço a ajuda!

1 resposta
solução!

Olá, Isabela, como vai?

Sobre sua primeira dúvida, a escolha entre getAttribute() e dataset depende do contexto. Se você está trabalhando com atributos data-*, o dataset é mais moderno e legível, pois acessa diretamente as propriedades do objeto. Para atributos convencionais (como id, class), getAttribute() é mais adequado.

Já sobre o uso do nodeValue para alterar textos, ele funciona sim, mas hoje em dia é menos comum em projetos. O innerText ou até textContent são mais utilizados por serem mais diretos e seguros, principalmente se você estiver lidando só com texto e não precisa manipular tags HTML.

Espero ter ajudado!

Siga firme nos seus estudos e conte com o fórum sempre que precisar.

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado