Szkielet dokumentu#
Skrypt#
Deklaracja zewnętrzna (z pliku):
<script type="text/javascript" src="ścieżka dostępu"></script>
Deklaracja wewnętrzna:
<script type="text/javascript">instrukcje</script>
Polecenie pozwala wstawić dowolną liczbę skryptów na stronie (zarówno w sekcji head jak i body).
Specjalne atrybuty elementu script:
src- określa lokalizację (adres względny lub bezwzględny) zewnętrznego skryptucharset- określa stronę kodową skryptu zewnętrznego (z pliku)type- określa w jakim języku napisano skrypt i przesłania domyślnie ustawiony język skryptowy. Stosując ten atrybut autorzy muszą sami określić jego wartość, domyślna wartość nie istnieje.language- określa wersję stosowanego językadefer- odracza wykonanie skryptu do czasu załadowania strony ze wszystkimi zasobami
Obecnie atrybut LANGUAGE jest zdeprecjonowany przez specyfikację HTML 4.01 - zaleca się stosowanie atrybutu type.
Najpopularniejszym językiem skryptowym jest JavaScript. Istnieją inne języki, np. VisualBasicScript (obsługiwany tylko przez przeglądarki Microsoftu), dla którego należy określić odpowiedni typ (type="text/vbscript").
Przykład użycia kilku skryptów na stronie:
...
<head>
...
<script type="text/javascript" src="www.strona/skrypt1.js"></script>
<script type="text/javascript">
var a = 10;
var b = 3;
var wynik = a + b;
alert("Wynik a+b: " + wynik);
</script>
...
</head>
<body>
...
<script type="text/javascript">
alert("Kolejny skrypt");
</script>
<script type="text/javascript" src="www.strona/skrypt2.js"></script>
<script type="text/javascript" src="www.strona/skrypt3.js"></script>
...
</body>Dla osób wyłączających przetwarzanie kodu skryptowego należy podać treść alternatywną - ewentualnie przestrzec przed ograniczeniami wynikającymi z blokady. Służy do tego celu specjalny element noscript.
Domyślny język skryptowy#
Specyfikacja HTML 4.01 wskazuje, że autorzy stron mogą określić domyślnie stosowany język skryptowy od razu w sekcji head (ewentualnie w nagłówkach HTTP samego serwera), bez konieczności podawania atrybutu type w każdym elemencie script:
<head> <meta http-equiv="content-script-type" content="rodzaj"> </head>
gdzie jako "rodzaj" podajemy nazwę stosowanego języka np. text/javascript, text/vbscript, text/tcl.
Programy klienckie (np. przeglądarki) powinny określić domyślny język skryptowy dla dokumentu zgodnie z następującymi regułami (od najwyższego do najniższego priorytetu):
- Jeśli jakaś deklaracja META zawiera
content-script-type, język skryptowy wyznacza ostatnia definicja. - W przeciwnym razie, jeśli nagłówki HTTP definiują
content-script-type, ostatni z nich ustawia język skryptowy.
Dokumenty, w których nie określono domyślnego języka skryptowego są błędne. Programy klienckie mogą w takim przypadku same określić języka, ale nie jest to wymagane.
W praktyce najczęściej stosuje się definiowanie języka skryptowego lokalnie, czyli dla każdego elementu script określamy atrybut type.
Samo pisanie skryptów jest zagadnieniem bardzo rozległym, obejmującym większy zakres niż (X)HTML oraz CSS razem wzięte. W planach mam utworzenie takiego profesjonalnego kursu, zobaczymy ile uda się zrealizować.