Event#
Event.eventPhase#
Właściwość eventPhase
zwraca liczbę całkowitą (wartość 0
, 1
, 2
, 3
) zależną od tego, która faza zdarzenia jest aktualnie przetwarzana dla danego zdarzenia. Właściwość jest tylko do odczytu.
Składnia#
Samo wywołanie i poszczególne jego części najlepiej objaśnić na zapisie składniowym:
var phase = event.eventPhase;
gdzie poszczególne człony oznaczają:
phase
- liczba całkowita, której wartość oznacza aktualną fazę zdarzenia. Dostępne są następujące możliwości:0
- zdarzenie nie zostało jeszcze wysłane, np. za pomocą metodyEventTarget.dispatchEvent()
, lub wysyłanie zostało zakończone (wszystkie jego fazy dobiegły końca). Odpowiadająca stała toNONE
.1
- zdarzenie znajduje się w fazie przechwytywania. Odpowiadająca stała toCAPTURING_PHASE
.2
- zdarzenie znajduje się w fazie celu (dotarło do celu zdarzenia). Odpowiadająca stała toAT_TARGET
.3
- zdarzenie znajduje się w fazie bąbelkowania. Odpowiadająca stała toBUBBLING_PHASE
.
event
- zdarzenie będące obiektem kontekstu.
Przy tworzeniu zdarzenia wartością domyślną dla właściwości eventPhase
musi być wartość 0
(stała NONE
).
Po wykonaniu wszystkich faz dla danego zdarzenia właściwość eventPhase
z powrotem ustawiona zostaje na wartość 0
(stała NONE
).
Prosty przykład:
<!DOCTYPE html>
<html>
<head>
<script>
// Uruchom po całkowitym załadowaniu dokumentu
window.onload = function(){
var button = document.getElementById("press");
var info = document.getElementById("info");
button.addEventListener("click", function(e){
info.innerHTML += "Interfejs zdarzenia e: " + e // [object MouseEvent]
+ "<br>" + "e.type: " + e.type // click
+ "<br>" + "e.bubbles: " + e.bubbles // true
+ "<br>" + "e.cancelable: " + e.cancelable // true
+ "<br>" + "e.defaultPrevented: " + e.defaultPrevented // false
+ "<br>" + "e.isTrusted: " + e.isTrusted // true
+ "<br>" + "e.eventPhase: " + e.eventPhase // 2
+ "<br>" + "e.timeStamp: " + e.timeStamp // liczba całkowita z wartością zależną od chwili uruchomienia przykładu
+ "<br>" + "e.currentTarget: " + e.currentTarget // [object HTMLInputElement]
+ "<br>" + "e.target: " + e.target; // [object HTMLInputElement]
e.preventDefault();
info.innerHTML += "<br><br>" + "e.defaultPrevented: " + e.defaultPrevented; // true
}, false);
window.addEventListener("click", function(e){
info.innerHTML += "<br><br>" + "Interfejs zdarzenia e: " + e // [object MouseEvent]
+ "<br>" + "e.currentTarget: " + e.currentTarget // [object Window]
+ "<br>" + "e.target: " + e.target // [object HTMLInputElement]
+ "<br>" + "e.timeStamp: " + e.timeStamp; // liczba całkowita z wartością zależną od chwili uruchomienia przykładu;
}, false);
}
</script>
</head>
<body>
<p>Kliknij w przycisk by uzyskać szczegółowe informacje dla zdarzenia.</p>
<input id="press" type="button" value="Kliknij mnie!">
<p style="color: blue;">Szczegółowe informacje dla przechwyconego zdarzenia:</p>
<p id="info"></p>
</body>
</html>
Interfejs Web IDL#
readonly attribute unsigned short eventPhase;
Specyfikacje i inne materiały#
Pasek społecznościowy