Zastosowanie mikroformatów
z Mozilla Developer Center, polskiego centrum programistów Mozilli.
Ten artykuł obejmuje funkcje wprowadzone w Firefoksie 3
Mikroformaty umożliwiają przekazywanie przez witryny internetowe do przeglądarek danych o określonej strukturze semantycznej. Umożliwia to zaprezentowanie podsumowania informacji na stronie bez wiedzy na temat tego, jak należy przetwarzać sam przekazywany dokument. W Firefoksie 3 zaimplementowano globalny obiekt Microformats, pozwalający na dostęp do mikroformatów. Interfejs API tego obiektu umożliwia łatwe wykrywanie i odczytywanie mikroformatów.
Spis treści |
[edytuj] Ładowanie interfejsu API mikroformatów
Obiekt Microformats można utworzyć za pomocą nowego mechanizmu ładowania skryptów dostępnego w programie Firefox 3. Aby skorzystać z interfejsu API, należy najpierw załadować obiekt:
Components.utils.import("resource://gre/modules/Microformats.js");
Po załadowaniu interfejsu API można korzystać z mikroformatów, używając podanych poniżej metod. Informacje na temat przetwarzania mikroformatów znajdują się artykule Przetwarzanie mikroformatów w języku JavaScript.
[edytuj] Wstępnie zdefiniowane mikroformaty
W programie Firefox 3 zaimplementowano definicje kilku popularnych mikroformatów:
adr- Reprezentuje adres (np. zamieszkania lub korespondencyjny).
geo- Reprezentuje lokalizację geograficzną (określaną za pomocą długości i szerokości geograficznej).
hCard- Reprezentuje informacje kontaktowe dotyczące osób.
hCalendar- Reprezentuje pozycję w kalendarzu (np. spotkanie).
tag- Używany w celu dodawania znaczników do innych mikroformatów.
[edytuj] Metody
[edytuj] add()
Dodaje nowy mikroformat do modułu mikroformatu.
Uwaga: Jeżeli mikroformat o danej nazwie istnieje, jest zastępowany przez nowy mikroformat.
add(nazwa, definicja);
[edytuj] Parametry
- nazwa
- Nazwa mikroformatu, który ma zostać dodany do modułu mikroformatu.
- definicja
- Struktura języka JavaScript opisująca mikroformat. Aby uzyskać szczegółowe informacje, patrz Opisywanie mikroformatów w języku JavaScript.
[edytuj] count()
Zwraca liczbę istniejących w dokumencie mikroformatów, które spełniają podane kryteria.
liczbaMikroformatow = Microformats.count(nazwa, element_główny, uwzględniaj_rekurencyjnie_ramki);
[edytuj] Parametry
- nazwa
- Nazwa mikroformatu, którego egzemplarze są liczone.
- element_główny
- Argument opcjonalny. Element DOM, od którego ma być rozpoczęte przeszukiwanie. Domyślnie jest to element
content.document(innymi słowy, cały dokument). - uwzględniaj_rekurencyjnie_ramki
- Argument opcjonalny. W przypadku podania wartości
truew przeszukiwaniu uwzględnione będą ramki potomne. Wartością domyślną jesttrue.
[edytuj] Zwracana wartość
Liczba całkowita określająca liczbę mikroformatów, które spełniają podane kryteria.
[edytuj] debug()
Zwraca ciąg znaków określający obiekt mikroformatu.
Uwaga: Zamiast stosowania metodydebug()można po prostu skorzystać z metody obiektu mikroformatu o tej samej nazwie:microformatObject.debug().
zrzucanyCiag = debug(obiekt_mikroformatu)
[edytuj] Parametry
- obiekt_mikroformatu
- Obiekt mikroformatu, którego zrzut jest wykonywany.
[edytuj] Zwracana wartość
Ciąg znaków opisujący zawartość podanego obiektu mikroformatu.
[edytuj] get()
Zwraca tablicę z obiektami mikroformatów, odpowiadającymi znalezionym mikroformatom spełniającym podane kryteria.
tablicaMikroformatow = Microformats.count(nazwa, element_główny, opcje, tablica_docelowa);
[edytuj] Parametry
- nazwa
- Nazwa poszukiwanego mikroformatu.
- element_główny
- Element DOM, od którego ma być rozpoczęte przeszukiwanie.
- opcje
- Argument opcjonalny. Obiekt JavaScript zawierający zero lub więcej następujących wskaźników:
- recurseFrames
- W przypadku podania wartości
truew przeszukiwaniu uwzględnione będą ramki potomne. Wartością domyślną jesttrue.- showHidden
- W przypadku podania wartości
truedodawane są ukryte mikroformaty; w przeciwnym przypadku są one ignorowane. Wartością domyślną jestfalse.- debug
- W przypadku korzystania z trybu debugowania należy podać wartość
true; w przeciwnym przypadku należy podać wartośćfalse. Wartością domyślną jestfalse.
- tablica_docelowa
- Argument opcjonalny. Tablica zawierająca obiekty mikroformatów, do której dodawane będą rezultaty wyszukiwania.
[edytuj] Zwracana wartość
Nowa tablica zawierająca obiekty mikroformatów, które spełniały podane kryteria, lub tablica określona w obiekcie microformats, do której dodano nowe, znalezione obiekty mikroformatów.
[edytuj] getNamesFromNode()
Zwraca listę rozdzielonych znakami spacji nazw mikroformatów, które odpowiadały podanemu węzłowi mikroformatu.
listaNazw = Microformats.getNamesFromNode(węzeł);
[edytuj] Parametry
- węzeł
- Węzeł, z którego ma zostać pobrana lista nazw mikroformatów.
[edytuj] Zwracana wartość
Jeżeli podany węzeł jest mikroformatem, zwracany jest ciąg znaków stanowiący listę rozdzielonych znakami spacji nazw mikroformatów, które odpowiadały podanemu węzłowi. Jeżeli węzeł nie jest mikroformatem, nie jest zwracana żadna wartość.
[edytuj] getParent()
Zwraca nadrzędny węzeł podanego mikroformatu lub węzła potomnego mikroformatu.
wezelNadrzedny = Microformats.getParent(węzeł);
[edytuj] Parametry
- węzeł
- Węzeł, którego węzeł nadrzędny ma być pobrany.
[edytuj] Zwracana wartość
Węzeł nadrzędny podanego węzła. Jeżeli podany węzeł nie jest mikroformatem ani węzłem potomnym mikroformatu, nie jest zwracana żadna wartość.
[edytuj] isMicroformat()
Określa, czy podany węzeł DOM jest mikroformatem.
wskaznik = Microformats.isMicroformat(węzeł);
[edytuj] Parametry
- węzeł
- Węzeł DOM, który ma zostać sprawdzony.
[edytuj] Zwracana wartość
true, jeżeli węzeł jest mikroformatem; w przeciwnym przypadku zwracana jest wartość false.
Uwaga: Metoda nie zwraca wartościtrue, jeżeli węzeł jest węzłem potomnym mikroformatu.