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

|Dúvida

"É necessário passar o type, ou seja, o seletor de atributo, pois os inputs do HTML não tem classes nem IDs, e também temos um input que não é do tipo type, impossibilitando o uso do seletor de nome de tag input." como assim type e IDs ? Alguém pode me esclarecer por favor ? Ficaria grato.

4 respostas

Oii Manoel, como você está?

Entendo sua dúvida.

No contexto da manipulação de elementos HTML utilizando Javascript, temos alguns tipos de seletores. São eles:

  • Seletores de Tipo (Type Selectors): Baseiam-se no tipo de elemento HTML, permitindo a seleção de todos os elementos de um determinado tipo, como todos os elementos <input> ou <button> em uma página.

  • Seletores de Classe (Class Selectors): Baseiam-se nas classes atribuídas a elementos HTML. Eles permitem selecionar elementos que têm uma classe específica, por exemplo, $(".minha-classe") seleciona elementos com a classe "minha-classe". As classes são atribuídas pela pessoa que está programando.

  • Seletores de ID (ID Selectors): Baseiam-se nos IDs exclusivos atribuídos a elementos HTML. É possível selecionar um elemento específico usando seu ID, por exemplo, $("#meu-id") seleciona o elemento com o ID "meu-id". Os IDs também são atribuídos pela pessoa que está programando.

  • Seletores de Atributo (Attribute Selectors): Permitem a seleção de elementos com base em atributos HTML específicos, como name, href, src, etc. Esses seletores oferecem uma maneira precisa de selecionar elementos, mesmo quando eles não têm classes ou IDs.

Aqui nesse link tem uma explicação da documentação oficial sobre os seletores.

No caso do código que o trecho que você compartilhou explica, temos um seletor de atributo:

const listaDeTeclas = document.querySelectorAll('input[type=button]');
console.log(listaDeTeclas);

Basicamente, esse código permite selecionar e armazenar na variável listaDeTeclas elementos <input> com type="button" na página. Então, a lista de elementos selecionados é exibida no console para fins de depuração ou verificação.

Espero que tenha ficado um pouquinho mais claro, Manoel. Entendo que tantos termos novos podem ser confusos quando estamos conhecendo uma nova linguagem de programação, mas, com a prática constante, fica mais fácil :)

Se restar alguma dúvida, fico à disposição.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Oi Larissa! Obrigado pela atenção para me responder. Vc esclareceu bastante mas eu ainda fiquei em dúvida sobre o que é um "ID" em específico No mais, eu agradeço

solução!

Opa, Manoel! Então vamos lá.

O ID (assim como class) é um atributo HTML, com a função de identificar elementos. Veja um exemplo:

<audio src="sounds/keyq.wav" id="som_tecla_pom"></audio>

O ID som_tecla_pom vai ser chamado quando a tecla pom for ativada. É ele que avisa para a função tocaBateria qual som deve ser reproduzido:

function tocaBateria(idElementoAudio) {
  const elemento = document.querySelector(idElementoAudio);

IDs nunca devem se repetir: é como uma "impressão digital" do elemento.

Existem muitos tipos de identificadores que possibilitam a interação ou formatação de algum elemento, dê uma olhadinha nesse artigo para conhecê-los. Perceba que existem alguns que já estão presentes no projeto Alura Midi, como as classes (que identificam um grupo de elementos). E outros são mais avançados e possibilitam interações mais elaboradas. Não precisa se preocupar em entender o funcionamento de todos agora, isso é algo que virá naturalmente conforme você evolui em sua prática :)

Fico à disposição, Manoel!

Abraço.

Bom dia ! Muito obrigado, Larissa !