Gostaria de obter o elemento atual (qualquer que seja o elemento) em um documento HTML em que cliquei. Estou usando:
$(document).click(function () {
alert($(this).text());
});
Mas, estranhamente, recebo o texto do documento inteiro (!), Não o elemento clicado.
Como obter apenas o elemento em que cliquei?
Exemplo
<body>
<div class="myclass">test</div>
<p>asdfasfasf</p>
</body>
Se eu clicar no texto "test", gostaria de poder ler o atributo com $(this).attr("myclass"
) no jQuery.
javascript
jquery
html
dom
user1145216
fonte
fonte
target
propriedade do objeto de evento.Respostas:
Você precisa usar o
event.target
qual é o elemento que originalmente acionou o evento. Othis
código do seu exemplo se referedocument
.No jQuery, isso é ...
Sem jQuery ...
Além disso, verifique se você precisa oferecer suporte ao <IE9 que você usa em
attachEvent()
vez deaddEventListener()
.fonte
if(event.target === myjQueryDivElement)
fazer:if(event.target.hasClass('mydivclass'))
onde mydivclass era uma classe que meu elemento tinha.|| target.innerText
?event.target
para obter oelement
para obter o texto do elemento clicado
fonte
use o seguinte na etiqueta do corpo
use em javascript a seguinte função para obter o ID
fonte
Você pode encontrar o elemento de destino em
event.target
:Referências:
fonte
Use
delegate
eevent.target
.delegate
aproveita o borbulhamento do evento, permitindo que um elemento escute e manipule eventos em elementos filho.target
é a propriedade jQ-normalized doevent
objeto que representa o objeto do qual o evento se originou.Demonstração: http://jsfiddle.net/xXTbP/
fonte
on()
deve ser recomendadodelegate()
. Além disso,document
é provavelmente a única exceção a não usardelegate()
/on()
pois eles estão borbulhando até o ponto mais alto de qualquer maneira.on
me esquece.delegate
tem a filtragem de sobrecarga a considerar, embora ...Eu sei que este post é realmente antigo, mas, para obter o conteúdo de um elemento em referência ao seu ID, é isso que eu faria:
fonte
fonte
Aqui está uma solução que usa um seletor jQuery para que você possa direcionar facilmente tags de qualquer classe, ID, tipo etc.
fonte