Objeto event
O objeto event é gerado quando um evento
é acionado e contém informações sobre ele. Quando o evento
ocorre, o objeto event é passado para a
função de tratamento.
Propriedades e métodos do objeto event
A tabela abaixo lista as propriedades e métodos
do objeto event e suas descrições:
| Nome | Descrição |
|---|---|
event.currentTarget |
O elemento DOM atual durante a fase de propagação (bubbling) do evento. Normalmente
esta propriedade é equivalente ao this da função.
|
event.data |
Parâmetro opcional. Objeto de dados passado para o método do evento ao anexar o manipulador executável. |
event.delegateTarget |
O elemento ao qual o manipulador de eventos jQuery recém-invocado
foi anexado. Esta propriedade é mais útil
em eventos delegados, onde o manipulador está vinculado a
um ancestral do elemento que está sendo processado. Para manipuladores
não delegados, vinculados diretamente ao elemento,
o valor de event.delegateTarget corresponde
ao valor de event.currentTarget.
|
event.isDefaultPrevented |
O método verifica se o método
event.preventDefault
foi chamado para este objeto de evento.
|
event.isImmediatePropagationStopped |
O método verifica se o método
event.stopImmediatePropagation
foi chamado para este objeto de evento.
|
event.isPropagationStopped |
O método verifica se o método
event.stopPropagation
foi chamado para este objeto de evento.
|
event.isPropagationStopped |
O método verifica se o método
event.stopPropagation
foi chamado para este objeto de evento.
|
event.metaKey |
O método verifica se a tecla
META foi pressionada no momento do acionamento
do evento. Dependendo da plataforma, a tecla
pode ser diferente. Retorna true ou
false.
|
event.namespace |
O namespace especificado no momento da chamada do evento. Esta propriedade pode ser útil para autores de plugins, cujas tarefas dependem do namespace utilizado. |
event.pageX |
Mostra a posição do mouse em relação à borda esquerda do documento. |
event.pageY |
Mostra a posição do mouse em relação à borda superior do documento. |
event.preventDefault |
Se este método for chamado, a ação
padrão para este evento não será
executada. Por exemplo, clicar em um link
não levará a um novo URL. Para
verificar se este método foi chamado,
pode-se usar o método
event.isDefaultPrevented.
|
event.relatedTarget |
Retorna outro elemento DOM participando
do evento, se houver. Para
mouseout mostra em qual
elemento o mouse está sobre, para mouseover
de qual elemento o cursor do mouse foi removido.
|
event.result |
O último valor retornado pelo manipulador
do evento acionado, que não seja
undefined. A propriedade pode ser útil
para obter valores de eventos personalizados.
|
event.stopImmediatePropagation |
Cancela a execução de todos os manipuladores de eventos restantes
associados ao elemento e impede a
propagação (bubbling) do evento na árvore DOM. Para
simplesmente impedir que o evento se propague para
elementos ancestrais, mas permitir a execução de outros
manipuladores de eventos, pode-se usar o método
event.stopPropagation. Use o método
event.isImmediatePropagationStopped para
verificar se event.stopImmediatePropagation foi chamado para este
objeto de evento.
|
event.stopPropagation |
Impede a propagação (bubbling) do evento na árvore DOM.
Lembre-se de que outros manipuladores
continuarão a funcionar para este elemento. Este
método funciona para eventos personalizados, acionados
usando o método
trigger.
Para verificar se este método foi chamado,
use event.isPropagationStopped.
|
event.target |
O elemento DOM que iniciou o evento. Pode
ser o elemento registrado para o evento ou
seu descendente. É muito útil comparar
event.target e this para determinar
a propagação (bubbling) do evento. A propriedade é útil na delegação
de evento, quando os eventos sobem (bubbling).
|
event.timeStamp |
A diferença de tempo em milissegundos entre
o momento da criação do evento pelo navegador e
1 de Janeiro de 1970. A propriedade pode ser
útil para determinar o desempenho
do evento obtendo a diferença de valores
de event.timeStamp para dois momentos
no código. Se você simplesmente quiser
obter a hora atual dentro do manipulador
de evento, use o método
getTime.
|
event.type |
Esta propriedade especifica o tipo de evento. |
event.which |
Esta propriedade indica qual tecla
do teclado ou do mouse foi pressionada. Para o mouse:
1 - botão esquerdo, 2 - botão do meio (scroll),
3 - botão direito. Use
event.which em vez de event.button.
|
Outras propriedades do objeto event
Existem outras propriedades que são copiadas
para o objeto event:
altKey, button, buttons, cancelable,
char, charCode, clientX, clientY,
ctrlKey, detail, eventPhase, key,
keyCode, offsetX, offsetY, originalTarget,
screenX, screenY, shiftKey,
toElement, view.
Para acessar propriedades não listadas acima,
pode-se usar o objeto event.originalEvent.
Exemplo
Vamos exibir em uma div - quais teclas foram pressionadas:
<input id="test" value="digite algo">
<div id="text"></div>
$('#test').on('keydown', function(event) {
$('#text').html(event.type + ": " + event.which);
});
Exemplo
Vamos exibir em uma div - em qual tag nós clicamos:
<body>
<div id="text"></div>
<div>
<p>
<strong><span>clique</span></strong>
</p>
</div>
</body>
span, strong, p {
display: block;
padding: 10px;
border: 1px solid black;
}
$('body').click(function(event) {
$('#text').html('clicado: ' + event.target.nodeName);
});
Veja também
-
método
on,
que permite vincular um manipulador de eventos a um elemento -
método
trigger,
que permite acionar todos os manipuladores de eventos, vinculados ao elemento para eventos do tipo especificado -
método
triggerHandler,
que permite acionar todos os manipuladores de eventos, vinculados ao elemento - eventos jQuery