Jak stworzyć własną skryptozakładkę? [JavaScript]
Skryptozakładki to niewielkie fragmenty JavaScriptu, które można przechowywać w przeglądarce na podobieństwo zakładek. Wykorzystują one fakt, że kod JavaScriptu możemy uruchamiać z paska adresowego przeglądarki. Dodając taki kod do ulubionych, zyskujemy możliwość uruchamiania takiego kodu jednym kliknięciem. Wiele popularnych witryn oferuje skryptozakładki jako rozszerzenia funkcjonalności swoich stron dla użytkowników – ich przewagą nad dedykowanymi rozszerzeniami do konkretnych przeglądarek jest uniwersalność: działają w każdym browserze. Jak zrobić własną skryptozakładkę?
Skryptozakładki najczęściej wykorzystywane są przez użytkowników takich social newsowych serwisów jak del.icio.us – pozwalają np dodać do serwisu daną stronę bez konieczności jej odwiedzania. Cała różnica pomiędzy zwykłym URL-em w zakładkach, a skryptozakładką sprowadza się więc do uchwytu (handlera), który pozwala na uruchomienie kodu JavaScriptu. Wygląda to zazwyczaj tak:
javascript:<polecenia JavaScriptu>
Na przykład:
javascript:void(document.bgColor='#fff')
co pozwala nam na zmianę własności koloru tła obiektu window.document na biały – przydatne dla tych wszystkich witryn, których autorom wydaje się, że czytanie na np. ciemnoszarym tle jest fajne.
Skryptozakładkę udostępnia się poprzez utworzenie z niej kotwicy,
a następnie pozwala użytkownikowi na zrobienie z niej zakładki. Jeśli teraz klikną zakładkę, czy to na pasku, czy z menu, kod zostanie wykonany.
Dwie zasady składniowe
-
Spacje są problemem – w kodzie skryptozakładki trzeba pozbyć się wszelkich spacji.
-
Przeglądarki mają limit długości URL. Wpływa on na długość użytego JavaScriptu. Dłuższy kod można więc skompresować, np. za pomocą narzędzi Closure. Można też zastosować sztuczkę polegającą na ładowaniu w skryptozakładce kodu z zewnątrz.
Najprzydatniejsze obiekty, metody i funkcje skryptozakładek
-
location.href – pozwala na dostęp do URL aktualnej strony,
-
document.title – pozwala na dostęp do tytułu dokumentu HTML,
-
window.getSelection – pozwala na dostęp do zaznaczonego tekstu,
-
decodeURIComponent() i encodeURIComponent() – zakodowanie nazwy lub adresu strony do bezpiecznej postaci.
Skryptozakładka del.icio.us
javascript:location.href='http://del.icio.us/post?v=4;url='+encodeURIComponent(location.href)+';title='+encodeURIComponent(document.title)
Co robi ta skryptozakładka? Jak widać, zmienia aktualny adres i ustawia parametry żądania na adres aktualnej strony i jej tytuł. Przed przesłaniem oba parametry zostają zakodowane.
Szybkość i usability
Skryptozakładki nie powinny:
-
dezorientować użytkownika, zakłócając jego doświadczenie strony czy przekierowując nie wiadomo gdzie,
-
być powolne. Aby przyspieszyć działanie skryptozakładek, możemy stosować te same tricki co wobec normalnego JavaScriptu – poprzez optymalizację kodu (ponownie warto zerknąć na Closure Tools) i kompresję gzip.
Popularne
Nazwa padła ofiarą szantażystów, inni polscy hosterzy też zagrożeni?
22
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Premiera Diablo 3 wzbudziła dyskusję na temat gier, które zawsze chcą być online
19
Nowy problem z Windows 8: bootuje się za szybko
10
Amerykańscy rodzice straszeni „e-narkotykami” dostępnymi w Sieci
21
Anonymous upubliczniają 1,7 GB danych wykradzionych Departamentowi Sprawiedliwości USA
11
Blueseed: libertariańska sztuczna wyspa przyciągnęła już ponad sto startupów z całego świata
8
Rewolucja w Firefoksie, nowa łatka czterokrotnie ograniczyła zużycie pamięci
20
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
CVDazzle: makijaż jest w stanie pokonać automatyczne systemy ulicznego monitoringu
3
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Ubuntu 12.04 LTS już dostępny: stabilna dystrybucja na następne pięć lat?
28
Zostań webmasterem polskiego rządu, zarobisz na komfortowe życie dla siebie i swojej rodziny
33
Społeczność
gonzales Javowcy pozdrawiają dotnetowców xD
kaziks Galaxy S II - u mnie po aktualizacji Firefox działa strasznie zacina się...
Doniek Szkoda że strona z demo nie działa - non stop się przeładowuje
bartez Niech zaczną jeszcze bardziej ograniczać programistów, to zdziwią się ilu...
Dave Smith Jestem Pastor Dave Smith prywatny pożyczkodawca pieniądze, z czego ponad...
marcusm Fajna reklama produktu za 500 zł
rza a to starsze aplikacje nie będą działać i kompilacja pod Windows SDK 7.1...
- Najdmen.pl: Konta www z wyłączonym licznikiem transferu od IONIC.pl (1)
- 2BE.PL: [Oferta] Promocja jak złoto w 2BE.PL (1)
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
Polecane książki
Praca
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |








