Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Código não funciona.

Poderiam me ajudar com isso aqui? ... Escrevi este código, é igual ao código que foi ensinado para mim na aula "Alterando Data Attributes". O que eu fiz de errado?

const html = document.querySelector('html');
const focobt = document.querySelector('.app__card-button--foco')
const curtobt = document.querySelector('.app__card-button--curto');

focobt = addEventListener('click', () => {
  html.setAttribute('data-contexto', 'foco')
})

curtobt = addEventListener('click', () => {
  html.setAttribute('data-contexto', 'descanso-curto')
})
2 respostas
solução!

O problema no seu código está relacionado à reatribuição das constantes focobt e curtobt. Quando você faz const focobt = ... e const curtobt = ..., está criando essas constantes, e uma constante não pode ser reatribuída. Ao tentar usar focobt = addEventListener(...), você está violando a natureza imutável das constantes.

O correto é focobt.addEventListener e não focobt = addEventListener

Aqui está o código corrigido:

const html = document.querySelector('html');
const focobt = document.querySelector('.app__card-button--foco');
const curtobt = document.querySelector('.app__card-button--curto');

focobt.addEventListener('click', () => {
  html.setAttribute('data-contexto', 'foco');
});

curtobt.addEventListener('click', () => {
  html.setAttribute('data-contexto', 'descanso-curto');
});

Agora, o código adiciona os event listeners corretamente e atualiza o atributo data-contexto do elemento html quando os botões são clicados.

Se essa resposta te ajudou lembre de marcar como solução

É verdade ... obrigado