Małe jest piękne
Wykorzystywane przy budowie stron różnorakie technologie i języki skryptowe umożliwiają tworzenie w ramach witryny internetowej prawdziwych aplikacji oprogramowanych wieloma liniami kodu. Często zwykła pomysłowość i wykorzystanie w prosty sposób możliwości udostępnianych przez przeglądarki może przynieść ciekawe, a często zaskakujące rezultaty...
Klawisz tabulacji w formularzu
Umieszczane często na stronach WWW formularze mogą zawierać pola
TextArea przeznaczone dla wprowadzania przez użytkownika więcej niż jednej linii tekstu. Klawisz tabulacji podczas pracy z formularzami służy do poruszania się po kolejnych elementach za pomoca klawiatury. Nie możliwe jest zatem uzyskanie poprzez zastosowanie klawisza tabulacji wcięcia akapitu przy wprowadzaniu tekstu w polu
TextArea. Przeglądarki internetowe mają domyślne działania skojarzone z zastosowaniem klawisza tabulacji - na przykład wciśnięcie klawisza powoduje, iż następny element (link, element formularza) strony staje się aktywny (dostaje fokus), kombinacja CTRL-TAB umożliwia skok do paska adresu przeglądarki, a działanie kombinacji SHIFT-TAB jest przeciwne do klawisza tabulacji.
Przedstawiony niżej skrypt umożliwia programowe rozwiązanie problemu. Pod naciśnięciu kombinacji klawiszy SHIFT-TAB wywoływana jest odpowiednia funkcja wprowadzająca akapit w polu formularza:
<SCRIPT>
//funkcja wykrywajaca wcisniety klawisz
function keyDetect(obiekt) {
//sprawdzenie czy wcisnieteymi klawiszami
//jest kombinacja SHIFT+TAB
if ((document.all) && (9==event.keyCode) && \
(event.shiftKey)) {
// wykorzystanie obiektu selection
obiekt.selection=document.selection.createRange();
setTimeout("simulate('" + obiekt.id + "')",0)
}
}
//funkcja nadpisujaca znaczenie kombinacji SHIFT+TAB
function simulate(id) {
// wpisanie znaku tabulacji w polu formularza
document.all[id].selection.text=String.fromCharCode(9)
// uaktywnienie elementu formularza
document.all[id].focus()
}
</SCRIPT>
W powyższym skrypcie przyjęta kombinację klawiszy można zmieniać modyfikując odpowiedni kod.
Umieszczenie w formularzu na stronie WWW pola TextArea wykorzystującego skrypt może wyglądać następująco:
<form actio.....
.....
<textarea id=element1 onKeyDown="keyDetect(this)">
Zawartosc pola TextArea
.....
</textarea>
</form>
Burza na ekranie
W Magazynie Internet wielokrotnie były już przedstawione sposoby i możliwości manipulowania oknami przeglądarki internetowej. Wiele metod i parametrów obiektu window języka
JavaScript umożliwia tworzenie wzbogacanie stron o ciekawe skrypty manipulujące oknami przeglądarki.
Metoda
moveBy obiektu window umożliwia względne przesunięcia położenia okna przeglądarki, np. fragment kodu
JavaScript:
self.moveBy(10,20)
spowoduje przesunięcie bieżącego okna przeglądarki o 10 punktów w prawo i 20 w dół.
W oparciu o praktycznie tylko tę jedną funkcję JavaScript umieszczoną w zagnieżdżonych pętlach możemy na stronie WWW umieścić skrypt dający zaskakujący rezultat - drganie bieżącego okna przeglądarki. Kod strony z takim skryptem może przedstawiać się następująco:
<html>
<head>
<title>Demonstracja skryptu Burza</title>
</head>
<body>
<script>
function burza() {
if (self.moveBy) {
for (skok = 10; skok > 0; skok--) {
for (i = 10; i > 0; i--) {
self.moveBy(0,skok); self.moveBy(skok,0);
self.moveBy(0,-skok);self.moveBy(-skok,0);
}
}
}
}
</script>
<a href="javascript:burza()">Uruchom skrypt</A>
</body>
</html>
Przedstawione wyżej dwa skrypty dowodzą, że przy konstrukcji ciekawych stron internetowych o końcowym efekcie często przesądza talent i pomysłowość ich twórcy, a nie bogate i często obszerne oprogramowanie. Udostępniane przez producentów co raz to nowe techniki budowy stron i możliwości nowych przeglądarek stanowią potężne narzędzia w rękach webmastera, ale tylko stosowane z odpowiednim rozmysłem udoskonalają końcowy efekt.