Alguém pode me dizer a diferença exata entre currentTarget
e target
propriedade nos eventos Javascript com exemplo e qual propriedade é usada em qual cenário?
javascript
Valli69
fonte
fonte
Respostas:
Basicamente, os eventos borbulham por padrão, portanto a diferença entre os dois é:
target
é o elemento que acionou o evento (por exemplo, o usuário clicou)currentTarget
é o elemento ao qual o ouvinte de evento está anexado.Veja uma explicação simples nesta postagem do blog .
fonte
XMLHttpRequest
target
= elemento que acionou o evento.currentTarget
= elemento que possui o ouvinte de evento.fonte
Exemplo mínimo executável
Se você clicar em:
então
1
ouve e anexa ao resultado:porque nesse caso:
2
é o elemento que originou o evento1
é o elemento que ouviu o eventoSe você clicar em:
em vez disso, o resultado é:
Testado no Chromium 71.
fonte
Se isso não persistir, tente o seguinte:
corrente em
currentTarget
refere-se ao presente. É o alvo mais recente que capturou o evento que borbulhou de outros lugares.fonte
Se clicar na tag P no código acima, você receberá três alertas e, se clicar na tag div, receberá dois alertas e um único alerta ao clicar na tag do formulário. E agora veja o código a seguir,
Aqui event.target é [objeto HTMLParagraphElement] e event.curentTarget é [objeto HTMLDivElement]: Então
Aqui clicamos na tag P, mas não temos ouvinte em P, mas no elemento pai div.
fonte
event.target é o nó do qual o evento se originou, ou seja. onde quer que você coloque seu ouvinte de evento (no parágrafo ou período), event.target se refere ao nó (onde o usuário clicou).
event.currentTarget , pelo contrário, refere-se ao nó no qual o ouvinte de evento atual foi anexado. Ou seja. se anexamos nosso ouvinte de evento no nó do parágrafo, event.currentTarget se refere ao parágrafo enquanto event.target ainda se refere à extensão. Nota: se também tivermos um ouvinte de evento no corpo, para este ouvinte de evento, event.currentTarget se refere ao corpo (ou seja, o evento fornecido como entrada para os listerners de eventos é atualizado sempre que um evento estiver borbulhando em um nó).
fonte