Zdarzenia#
Słownik pojęć#
W specyfikacji D3E utworzono niewielki słownik z podstawowymi definicjami. Niektóre z nich zostały zapożyczone lub zmodyfikowane w oparciu o podobne definicje z innych dokumentów standaryzacyjnych W3C. Oto najważniejsze definicje (w kolejności zgodniej z oryginalnym nazewnictwem):
activation behavior
- activation behavior (aktywujące zachowanie) #
- Akcja podejmowana kiedy zdarzenie, zazwyczaj zainicjowane przez użytkownika za pomocą urządzenia wejściowego, powoduje na elemencie spełnienie zdefiniowanego zadania. Zadanie może być zdefiniowane dla tego elementu przez język gospodarza, przez zmienne autora, lub oba te warianty jednocześnie. Domyślnym zadaniem dla danego elementu może być generyczna lub unikatowa akcja. Dla przykładu, aktywującym zachowaniem w językach HTML i SVG dla elementu
<a>
jest spowodowanie by aplikacja kliencka przeszła do odsyłacza wskazywanego przez atrybuthref
, z dalszym opcjonalnym parametrem określającym kontekst przeglądania dla przechodzenia (np. bieżące okno lub karta, nazwane okno lub nowe okno). Aktywującym zachowaniem w języku HTML dla elementu<input>
z atrybutemtype
o wartościsubmit
jest wysłanie wartości elementów formularza do określonego przez autora IRI przy użyciu określonej przez autora metody HTTP. Więcej szczegółowych informacji znajduje się w podrozdziale "Aktywujące wyzwalacze i zachowania".
activation trigger
- activation trigger (aktywujący wyzwalacz) #
- Zdarzenie, które jest zdefiniowane w celu zainicjowania aktywującego zachowania. Więcej szczegółowych informacji znajduje się w podrozdziale "Aktywujące wyzwalacze i zachowania".
author
- author (autor) #
- W kontekście specyfikacji D3E autorem (author), autorem zawartości (content author) lub autorem skryptu (script author) jest osoba, która pisze skrypt lub inną wykonywalną zawartość, która wykorzystuje interfejsy, zdarzenia i przepływ zdarzeń zdefiniowane w specyfikacji D3E. Więcej szczegółowych informacji zawiera definicja zawartość i autorów zawartości.
body element
- body element (elementowe ciało) #
- W dokumentach HTML lub XHTML elementowe ciało reprezentuje zawartość dokumentu. W dobrze sformułowanym dokumencie HTML elementowe ciało jest pierwszym potomkiem elementowego korzenia.
bubbling phase
- bubbling phase (faza bąbelkowania) #
- Proces, w którym zdarzenie może zostać obsłużone przez jednego z przodków celu po zakończeniu obsługi przez cel zdarzenia. Więcej szczegółowych informacji znajduje się w opisie fazy bąbelkowania przy omawianiu przepływu zdarzeń.
candidate event handlers
candidate event listeners
- candidate event handlers (kandydujące uchwyty zdarzeń) #
- candidate event listeners (kandydujące nasłuchy zdarzeń) #
Lista wszystkich nasłuchów zdarzeń, które zostały zarejestrowane na obiekcie docelowym w kolejności ich rejestracji. Lista ta jest przechwytywana lub "zamrażana" zanim uchwyty zdarzeń na obiekcie docelowym zostaną przetworzone, i zwalniana lub "odmrażana" po przetworzeniu tego zestawu kandydujących uchwytów zdarzeń (pozwalając tym nasłuchom zdarzeń na dodawanie lub usuwanie dodatkowych nasłuchów zdarzeń na innych obiektach w łańcuchu propagacji zdarzenia, ale bez wpływu na kolejność nasłuchów, które zostaną wywołane na obiekcie docelowym).
Wstępne przechwytywanie kandydujących nasłuchów zdarzeń zapobiega nieskończonym pętlom przetworzeń nasłuchów zdarzeń na danym obiekcie docelowym.
capture phase
- capture phase (faza przechwytywania) #
- Proces, w którym zdarzenie może zostać obsłużone przez jednego z przodków celu przed zakończeniem obsługi przez cel zdarzenia. Więcej szczegółowych informacji znajduje się w opisie fazy przechwytywania przy omawianiu przepływu zdarzeń.
character value
- character value (wartość znakowa) #
W kontekście wartości klawiszy wartość znakowa jest łańcuchem znakowym reprezentującym jeden lub więcej znaków Unicode, takich jak litera lub symbol, jak również zestaw liter. W specyfikacji D3E wartości znakowe są wskazywane przez sekwencje Unicode (np.
"\u0020"
) lub glif reprezentujący ten sam kod znaku (np." "
), i zazwyczaj specyfikacja oznacza je kolorami, aby pomóc odróżnić te dwie reprezentacje.W kodzie źródłowym niektóre wartości znakowe, jak np. znaki niegraficzne można przedstawić za pomocą właściwego dla danego języka programowania znaku uniku.
current event target
- current event target (aktualny cel zdarzenia) #
- W przepływie zdarzeń aktualny cel zdarzenia jest obiektem skojarzonym z nasłuchem zdarzenia, który jest obecnie przetwarzany. Obiekt ten może być celem zdarzenia we własnej postaci lub jednym z jego przodków. Aktualny cel zdarzenia ulega zmianie zgodnie z propagacją zdarzenia od obiektu do obiektu przez różne fazy przepływu zdarzeń. Aktualny cel zdarzenia jest wartością wskazywaną przez właściwość
Event.currentTarget
.
dead key
- dead key (martwy klawisz) #
- Martwy klawisz jest klawiszem lub kombinacją klawiszy, który we własnej postaci nie produkuje znaków, ale który w kombinacji lub sekwencji z innym klawiszem produkuje zmodyfikowany znak, jak choćby znak z oznaczeniami diakrytycznymi (np.
ö
,é
,â
).
default action
- default action (domyślna akcja) #
- Domyślna akcja jest opcjonalnym uzupełniającym zachowaniem, które implementacja musi wykonać w kombinacji z wysłaniem obiektu zdarzenia. Każda definicja typu zdarzenia oraz każda specyfikacja określa domyślną akcja dla tego typu zdarzenia, jeśli takową posiada. W pewnych okolicznościach instancja zdarzenia może posiadać więcej niż jedną domyślną akcję, np. gdy jest powiązana z aktywującym wyzwalaczem. Domyślna akcja może zostać odwołana poprzez wywołanie metody
Event.preventDefault()
. Więcej szczegółowych informacji znajduje się w podrozdziale "Domyślne akcje i anulowanie zdarzeń".
defaultView
- defaultView (widok domyślny) #
- Widok domyślny to obiekt typu
WindowProxy
kontekstu przeglądania dokumentu, który jest wskazywany przez właściwośćDocument.defaultView
. Definicja pochodzi ze specyfikacji HTML5.
delta
- delta (delta) #
- Szacunkowa wartość przewinięcia (w pikselach, liniach lub stronach), o którą aplikacja kliencka przewinie lub powiększy stronę w odpowiedzi na fizyczny ruch urządzenia wejściowego obsługującego interfejs WheelEvent (jak kółko myszy czy ekran dotykowy). Wartość delty (np. z właściwości
WheelEvent.deltaX
,WheelEvent.deltaY
czyWheelEvent.deltaZ
) należy interpretować w kontekście bieżącej właściwościWheelEvent.deltaMode
. Związek między fizycznym ruchem kółka (lub innego urządzenia) a dodatnią lub ujemną wartością delty zależy od środowiska i urządzenia. Jednakże, jeśli aplikacja kliencka wykonuje przewijanie będące domyślną akcją to znak delty jest przekazywany przez praworęczny układ współrzędnych, gdzie pozytywne osieX
,Y
iZ
są skierowane odpowiednio do najdalszej prawej krawędzi, najdalszej dolnej krawędzi i największej głębokości (z dala od użytkownika) dokumentu.
deprecated
- deprecated (przestarzałe) #
- Funkcje oznaczone przez specyfikację D3E jako przestarzałe stanowią jedynie referencje dla starszych implementacji lub specyfikacji, są opcjonalne a ich rozwój został zaniechany. Tylko te funkcje, które mają istniejący lub opracowywany zamiennik są uznawane za przestarzałe. Implementacje, które do tej pory nie zapewniły wsparcia dla najnowszych funkcji mogą zaimplementować przestarzałe funkcje ze względu na kompatybilność wsteczną z już istniejącą treścią, ale autorzy zawartości tworzących treść nie powinni stosować przestarzałych funkcji, chyba że nie ma innego sposobu, aby rozwiązać dany przypadek. Inne specyfikacje nawiązujące do specyfikacji D3E nie powinny stosować przestarzałych funkcji, w zamian tego powinny wskazywać na ich aktualne zastępniki. Oczekuje się, że przestarzałe funkcje zostaną całkowicie porzucone przez przyszłe specyfikacje.
dispatch
- dispatch (wysłanie) #
Oznacza utworzenie zdarzenia z właściwościami i metodami odpowiednimi dla jego typu i kontekstu, a następnie jego propagację w drzewie DOM w określony sposób. Może być używane zamiennie z terminem odpalenie, np. "odpal zdarzenie
click
" lub "wyślij zdarzenieload
".W DOM4 wysłanie i odpalenie zdarzenia to osobne definicje.
document
- document (dokument) #
- Obiekt będący instancją interfejsu Document, który reprezentuje cały tekstowy dokument HTML lub XML. Koncepcyjnie jest to korzeń drzewa dokumentu i zapewnia podstawowy dostęp do danych dokumentu.
event
- event (zdarzenie) #
- Zdarzenie sygnalizuje wystąpienie pewnych okoliczności (np. kliknięcie myszy na elemencie, usunięcie dziecka z elementu, lub dowolną ilość innych możliwości), i jest skojarzone ze swoim celem zdarzenia. Każde zdarzenie jest instancją jednego konkretnego typu zdarzenia.
event focus
- event focus (zdarzenie zogniskowania) #
- Zdarzenie zogniskowania jest specjalnym stanem wrażliwości i koncentracji na bieżącym elemencie lub innym celu zdarzenia w obrębie dokumentu. Każdy element ma odmienne zachowanie w czasie zogniskowania, w zależności od jego funkcjonalności, jak przygotowanie elementu dla aktywacji (np. dla przycisku lub odsyłacza), przełączenie stanu (np. dla checkboksów), przyjęcie tekstu wejściowego (np. pole tekstowe formularza) czy kopiowanie zaznaczonego tekstu. Więcej szczegółowych informacji znajduje się w podrozdziale "Zogniskowanie dokumentu i kontekst zogniskowania".
event focus ring
- event focus ring (pierścień zdarzenia zogniskowania) #
- Pierścień zdarzenia zogniskowania jest uporządkowanym zestawem celów zdarzeń zogniskowania w dokumencie. Język gospodarza może definiować jeden lub więcej sposobów określających kolejność celów, np. dokumentowa kolejność, numeryczne indeksy przypisane dla każdego celu zogniskowania, jawne wskaźniki między celami zogniskowania, a nawet hybrydy różnych modeli. Każdy dokumentu może zawierać wiele pierścieni zogniskowania lub warunkowe pierścienie zogniskowania. Zazwyczaj, dla dokumentowej kolejności lub indeksowanych pierścieni zogniskowania, zogniskowanie "zatacza okrąg" od ostatniego celu zogniskowania do pierwszego.
event handler
event listener
- event handler (uchwyt zdarzenia) #
- event listener (nasłuch zdarzenia) #
Obiekt, który implementuje interfejs EventListener i udostępnia zwrotną metodę
EventListener.handleEvent()
. Nasłuchy zdarzeń są zależne od języka. Nasłuchy zdarzeń są wywoływane w kontekście danego obiektu (aktualnego celu zdarzenia) i są dostarczane z samego obiektu zdarzenia.W JavaScript funkcje zdefiniowane przez użytkownika są uważane za implementujące interfejs EventListener. Obiekt
Event
zostanie przekazany do funkcji użytkownika jako pierwszy argument, w chwili jej wywołania. Obiekty JavaScript również mogą implementować interfejs EventListener, kiedy mają zdefiniowaną metodęhandleEvent
.W DOM4 uchwyt zdarzenia stanowi szerszą definicję od tej powyższej.
event order
- event order (kolejność zdarzeń) #
Sekwencja, w jakiej pojawiają się zdarzenia z tego samego źródła lub procesu, przy użyciu tych samych lub pokrewnych interfejsów zdarzeń. Dla przykładu, w środowisku z myszą, trackpadem i klawiaturą, każde z tych urządzeń wejściowych stanowiłoby osobne źródło zdarzeń, i każde z nich wprowadza swoją kolejność zdarzeń. Zdarzenie
mousedown
z trackpada, po którym następuje zdarzeniemouseup
z myszy nie spowodowałyby zdarzeniaclick
.Mogą występować interakcje między różnymi kolejnościami zdarzeń. Dla przykładu, zdarzenie
click
może być modyfikowane przez równoległe zdarzeniekeydown
('Shift'
+click
). Tak czy inaczej kolejności zdarzeń z tych różnych źródeł zdarzeń będą osobne.Kolejności zdarzeń niektórych interfejsów nie zależą od urządzenia. Dla przykładu, użytkownik może zmienić zogniskowanie przy użyciu klawisza
'Tab'
lub kliknąć myszą na nowy ogniskujący element. Kolejność zdarzeń w takich przypadkach zależy od stanu procesu, a nie od stanu urządzenia, które inicjuje zmianę stanu.
event phase
- event phase (faza zdarzenia) #
- Zobacz definicję fazy.
event target
- event target (cel zdarzenia) #
- Obiekt, do którego zdarzenie jest wysyłane przy użyciu przepływu zdarzeń DOM. Cel zdarzenia jest wartością wskazywaną przez właściwość
Event.target
.
event type
- event type (typ zdarzenia) #
- Typ zdarzenia jest obiektem zdarzenia o specyficznej nazwie i który definiuje specyficzne warunki wyzwalania, właściwości i inne cechy, które odróżniają go od innych typów zdarzeń. Dla przykładu, zdarzenie typu
click
ma inne cechy niż zdarzenia typumouseover
czyload
. Typ zdarzenia jest eksponowany przez właściwośćEvent.type
. W potocznym obiegu najczęściej używa się luźnego terminu "zdarzenie", np. zdarzenieclick
. Więcej szczegółowych informacji znajduje się w przeglądzie typów zdarzeń.
fire
host language
- host language (język gospodarza) #
- Każdy język, który łączy w sobie cechy ze specyfikacji innego języka lub API, aczkolwiek normatywnie odsyła do źródła tych specyfikacji zamiast przedefiniowania ich cech, i rozszerza te cechy jedynie w sposób, który został zdefiniowany przez źródłową specyfikację. Źródłowa specyfikacja zazwyczaj jest przeznaczona do implementacji wyłącznie w ramach jednego lub większej liczby języków gospodarza, a nie jako samodzielny język. Dla przykładu, XHTML, HTML lub SVG są językami gospodarza dla specyfikacji D3E, które integrują oraz rozszerzają obiekty i modele zdefiniowane w tej specyfikacji.
hysteresis
- hysteresis (histereza) #
- Funkcja właściwa dla ludzkiego interfejsu zaprojektowana do przyjmowania wartości wejściowych w pewnym zakresie położenia lub czasu w celu poprawy doświadczeń użytkownika. Dla przykładu, podwójne kliknięcie przycisku myszy przez użytkownika oparte jest na histerezie czasowej, a brak natychmiastowego zamknięcia zagnieżdżonego menu kiedy mysz użytkownika opuszcza okno nadrzędne oparte jest na histerezie położenia.
IME
input method editor
- IME (IME) #
- input method editor (edytor metody wejściowej) #
Edytor metody wejściowej, znany również jako procesor front-endu, to aplikacja, która wykonuje konwersję między klawiszami i ideogramami lub innymi znakami, zwykle wprowadzana przez użytkownika przy przeszukiwaniu słownika, i bardzo często używana w językach wschodnioazjatyckich (np. chińskim, japońskim czy koreańskim). IME mogą być również wykorzystywane do bazującego na słowniku automatycznego uzupełniania słów, jak ma to miejsce w urządzeniach mobilnych. Więcej szczegółowych informacji znajduje się w podrozdziale "Edytory metod wejściowych" oraz definicji systemu kompozycji tekstu.
Warto zapoznać się z definicją metody wejściowej i edytora metody wejściowej na Wikipedii.
key mapping
- key mapping (mapowanie klawisza) #
- Mapowanie klawisza jest procesem przypisywania wartości klawiszowej do konkretnego klawisza, i jest wynikiem kombinacji kilku czynników, włączając w to system operacyjny oraz układ klawiatury (np. QWERTY, Dvorak, Spanish, InScript, Chinese, itd.), i po uwzględnieniu stanów wszelkich klawiszy modyfikujących (np.
'Shift'
,'Alt'
, itd.) oraz martwych klawiszy.
key value
- key value (wartość klawiszowa) #
- Wartość klawiszowa jest wartością znakową lub ciągiem wielu znaków (takich jak
'Enter'
,'Tab'
czy'MediaTrackNext'
) skojarzoną z klawiszem w określonym stanie. Każdy klawisz posiada wartość klawiszową, niezależnie od tego, czy posiada wartość znakową. Obejmuje to klawisze kontrolne, klawisze funkcyjne, klawisze modyfikujące, martwe klawisze i dowolne inne klawisze. Wartość klawiszowa dla każdego klawisza w danej chwili zależy od mapowania klawisza.
modifier key
- modifier key (klawisz modyfikujący) #
- Klawisz modyfikujący zmienia normalne zachowanie dla danego klawisza, jak w chwili produkcji znaku o różnej wielkości (dla klawisza
'Shift'
), lub zmiany wyzwalanej funkcji (jak w przypadku klawiszy'Fn'
lub'Alt'
). Więcej szczegółowych informacji znajduje się w podrozdziale "Klawisze modyfikujące".
phase
- phase (faza) #
- W kontekście zdarzeń faza jest zestawem logicznych przejść między węzłami należącymi do drzewa węzłów DOM, z widoku domyślnego (okna), do obiektu
Document
, elementowego korzenia, i niżej do celu zdarzenia (faza przechwytywania), do celu zdarzenia we własnej postaci (faza celu), i w górę po tym samym łańcuchu (faza bąbelkowania).
propagation path
- propagation path (ścieżka propagacji) #
- Uporządkowany zestaw aktualnych celów zdarzeń, przez które obiekt zdarzenia kolejno przechodzi do i od celu zdarzenia. W czasie propagowania zdarzenia każdy aktualny cel zdarzenia ze ścieżki propagacji jest ustawiany na właściwość
Event.currentTarget
. Ścieżka propagacji początkowo składa się z jednej lub większej liczby faz zdarzeń jak zdefiniowano dla danego typu zdarzenia, ale może zostać przerwana. Nazywana jest też łańcuchem celu zdarzenia (event target chain).
QWERTY
- QWERTY (QWERTY) #
- QWERTY (wymawiane "kwɜrti") jest popularnym układem klawiaturowym, nazwanym tak ze względu na pierwsze pięć klawiszowych znaków w górnym rzędzie klawiszy literowych, którymi są Q, W, E, R, T i Y. Istnieje wiele innych popularnych układów klawiaturowych (włącznie z układami Dvorak i Colemak), większość zaprojektowano ze względu na lokalizację lub ergonomię.
root element
- root element (elementowy korzeń) #
- Pierwszy węzeł elementowy w dokumencie, dla którego wszystkie inne elementy są dziećmi. Bardzo często nazywany elementem dokumentowym.
target phase
- target phase (faza celu) #
- Proces, w którym zdarzenie może zostać obsłużone przez cel zdarzenia. Więcej szczegółowych informacji znajduje się w opisie fazy celu przy omawianiu przepływu zdarzeń.
text composition system
- text composition system (system kompozycji tekstu) #
- Składnik oprogramowania, który interpretuje pewną postać alternatywnego wejścia (jak np. edytor metody wejściowej, procesor mowy lub system rozpoznawania pisma) i przekształca go do postaci tekstowej.
topmost event target
- topmost event target (wierzchni cel zdarzenia) #
- Wierzchni cel zdarzenia musi być elementem najwyżej położonym w kolejce renderowania i jednocześnie zdolny do bycia celem zdarzenia. W graficznych interfejsach użytkowników jest to element znajdujący się pod urządzeniem wskazującym użytkownika. Funkcja "testowania trafienia" interfejsu użytkownika jest używana do określenia celu. Szczegółowe informacje dotyczące testowania trafienia i układania kolejności definiuje język gospodarza.
tree
- tree (drzewo) #
- Struktura danych reprezentująca dokument jako hierarchiczny zestaw węzłów z relacjami dziecko-rodzic-brat, tj. każdy węzeł posiada jednego lub więcej przodków, potomków i braci. Więcej szczegółowych informacji znajduje się w dziale "Podstawy - Drzewo węzłów".
user agent
- user agent (aplikacja kliencka) #
- Program w rodzaju przeglądarki lub narzędzia do tworzenia zawartości (content authoring tool), normalnie uruchomionego na komputerze klienta, który podejmuje działania w imieniu użytkownika dla takich akcji jak pobieranie, interpretacja, wykonywanie, prezentacja lub tworzenie treści. Użytkownicy mogą działać na zawartości stosując różne aplikacje klienckie w różnych czasach i dla różnych celów. Więcej szczegółowych informacji zawierają definicje przeglądarek internetowych i innych dynamicznych lub interaktywnych aplikacji klienckich oraz narzędzi tworzących.