-
Zastosowanie Ajax Navigation
dodano 20.12.2007 / komentarzy: 0 / autor: agressivaTen tutorial pokaże Wam jak należy posługiwać się jednym ze skryptów służących do nawigacji na stronie tj. Ajax Navigation.
Pokaże Wam dwie sytuacje w jakich ten skrypt może być wykorzystywany - przy treści na stronie oraz w galerii zdjęć.Kod przygotowanej, przykładowej strony wygląda następująco:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Zastosowanie Ajax Navigation</title>
<link rel="stylesheet" href="style.css" media="all" /><script type="text/javascript" src="ajax_navagation.js"></script>
set_loading_message("Proszę czekać! Trwa wczytywanie strony…");
</head>
<body>
<div id="page">
<h2 class="galeria">Treść strony</h2>
<div id="menu">
<ul>
<li><a href="javascript:void(0)"onclick="open_url(’strona1.html’,'tresc’);">Pozycja 1</a></li>
<li><a href="javascript:void(0)"onclick="open_url(’strona2.html’,'tresc’);">Pozycja 2</a></li>
<li><a href="javascript:void(0)"onclick="open_url(’strona3.html’,'tresc’);">Pozycja 3</a></li>
</ul>
</div><div id="tresc"></div>
<script type="text/javascript">open_url(’home.html’,'tresc’);</script>
<div class="end"></div>
<hr /><h2 class="galeria">Galeria zdjęć</h2>
<div id="miniatury">
<a href="javascript:void(0)" onclick="open_url(’foto1.html’,'podglad’);"><imgsrc="1m.jpg" alt="#" /></a>
<a href="javascript:void(0)" onclick="open_url(’foto2.html’,'podglad’);"><imgsrc="2m.jpg" alt="#" /></a>
<a href="javascript:void(0)" onclick="open_url(’foto1.html’,'podglad’);"><imgsrc="1m.jpg" alt="#" /></a>
<a href="javascript:void(0)" onclick="open_url(’foto2.html’,'podglad’);"><imgsrc="2m.jpg" alt="#" /></a>
</div>
<div id="podglad"></div>
<div class="end"></div>
</div></body>
</html>
Treść na stronie
Niżej znajduje się schematyczna stronka, która składa się z menu bocznego oraz pola w którym będzie wyświetlana treść ukryta pod linkami w menu.
Na samym początku kiedy mamy już kod strony musimy ten fragment sktypu JavaScript zapisać w pliku o rozszerzeniu .js przy pomocy dowolnego edytora html.
var please_wait = null;function open_url(url, target) {
if ( ! document.getElementById) {
return false;
}if (please_wait != null) {
document.getElementById(target).innerHTML = please_wait;
}if (window.ActiveXObject) {
link = new ActiveXObject("Microsoft.XMLHTTP");
} else if (window.XMLHttpRequest) {
link = new XMLHttpRequest();
}if (link == undefined) {
return false;
}
link.onreadystatechange = function() { response(url, target); }
link.open("GET", url, true);
link.send(null);
}function response(url, target) {
if (link.readyState == 4) {
document.getElementById(target).innerHTML = (link.status == 200) ?link.responseText : "Ooops!! A broken link! Please contact the webmaster of this
website ASAP and give him the fallowing errorcode: " + link.status;
}
}function set_loading_message(msg) {
please_wait = msg;
}Tak jak wskazuje instrukcja na stronie polecam nadać nazwę ajax_navagation.js
Teraz w części<head></head>musimy umieścić:<script type="text/javascript" src="ajax_navagation.js"></script>set_loading_message("Proszę czekać! Trwa wczytywanie strony…");
Aby cały ten mechanizm zadziałał musimy jeszcze do naszego kodu strony dodać najwazniejszą rzecz, a konkretnie fragment skryptu przydzialony do kazdej pozycji w menu. Fragment ten musimy umieścić w
<a href="tutaj musisz zamieścić fragment skryptu">Pozycja w menu</a>
wyglada on następująco:
javascript:void(0)" onclick="open_url('strona1.html','tresc');
Można go modyfikować. W podanym przykładzie wygląda to tak:
‘strona1.html‘ - jest to nazwa pliku html , który ma się wczytać po kliknięciu na daną pozycję w menu, zamiast tego podajecie w takim samym stylu namiar na Wasz plik , który ma się ukazać.
‘tresc‘- jest to nazwa diva w którym wyświetlany będzie wczesniej wskazany link po kliknięciu w pozycję menu. Nie musi to być od razu div, można również podać nazwe komórki tabeli… zależy to jedynie od tego jak wyglada pozostały kod Waszej strony.A taki przykładowy link w menu wygląda tak:
<a href="javascript:void(0)" onclick="open_url('strona1.html','tresc');">Pozycja 1</a>Jak widzicie pod divem ‘tresc’ w którym wyświetla się zawartość wskazanych plików umiesciłam taki kod:
<script type="text/javascript">open_url('home.html','tresc');</script>
Ma on własciwie taką samą formę jak ten który wstawiany jest w <a href=”"></a>.
W tym przypadku ‘home.html’ oznacza pik który ma się wczytać jeszcze przed wybraniem pozycji z menu.Galeria zdjęć
Działa ona własciwie na tej samej zasadzie co treść strony.
Należy jedynie przygotować sobie miniaturki zdjęć, które będą znajdować się obok pola na wyświetlanie pełnowymiarowego zdjęcia (tak jak w tym przypadku). Każda miniaturka musi być podlinkowana do pliku w którym znajduje się duże zdjęcie. Np:
<a href="javascript:void(0)" onclick="open_url('foto1.html','podglad');"><img src="1m.jpg" alt="#" /></a>Skrypt nawigacyjny Ajax Navigation można stosować niemalże zawsze w prostych stronach i galeriach fotograficznych. Jednak do bardziej zaawansowanych stronach już się tak nie nadaje. Po każdym odświeżeniu strony wraca się do wcześniej wspomnianego ‘home.html’.
Efekt końcowy zaprezentowany jest tutaj.


















Napisz komentarz