Cкрипт позволяет обновлять любую часть страницы сайта без перезагрузок, и через определенный период времени.
Как это работает: мы открыли сайт, скрипт посылает запрос на определенную страницу, и выбирает нужный нам элемент (например: статистику сайта), возвращая его скрипту, а скрипт заменяет устаревшую информацию обновленной (в нашем случае — статистику).
Как установить скрипт: установка не является такой уж трудной, чтобы было понятнее, я покажу на примере обновления списка категорий с количеством материалов (
$CATEGORIES$). Итак, мы имеем такой код:
Код
<!-- <block2> -->
<?if($CATEGORIES$)?>
<div class="block">
<div class="block_header"><!-- <bt> --><!--<s5351>-->Категории раздела<!--</s>--><!-- </bt> --></div>
<div class="block_content"><!-- <bc> -->$CATEGORIES$<!-- </bc> --></div>
</div>
<?endif?>
<!-- </block2> -->
Здесь единственная информация которая меняется, это
$CATEGORIES$, она то нам и нужна. Теперь следует «обернуть» этот код в два дива (
<div>), то есть вот так :
Код
<div id="update_parent"><div id="update_content">$CATEGORIES$</div></div>
Итак, по порядку:
Как видите, у двух дивов есть уникальный идентификатор (
id=""), я присвоил первому значение «
update_parent», а второму «
update_content» (можно ставить и свои значения, но рекомендую ничего не менять, за исключением многократного использования на сайте, то есть тогда, когда без этого работать не будет, об этом позже).
Заместо «
$CATEGORIES$», ставим код, который хотите обновлять.
Далее следует установить скрипт после
<body>, на uCoz, чтобы показывал на всех страницах, нужно ставить в самый верх «шапки» сайта (
Панель управления -> Управление дизайном -> Верхняя часть сайта).
Код
<script>
function update() {
$('#update_parent').load('/ #update_content');
}
setInterval('update()', 1000);
</script>
Теперь разберем этот код:
Если изменяли значения «
update_parent» и «
update_content» на свои то ставим за место них свои
id.
1000 — это одна время через которое будет обновляться элемент (если хотите, можете менять), в миллисекундах (1 секунда = 1000 миллисекунд).
Все, скрипт будет работать! ;)
Использование несколько раз: для того, чтобы использовать этот скрипт несколько раз на сайте, нужно:
Создать новую функцию (function), проще говоря скопировать и вставить рядом. Вот так:
Код
function update() {
$('#update_parent').load('/ #update_content');
}
function update() {
$('#update_parent').load('/ #update_content');
}
Затем сменить название функции, и
id у дивов и в скрипте (смотрите выше), иначе работать не будет. Вот что у нас получилось:
Код
function update() {
$('#update_parent').load('/ #update_content');
}
function update_two() {
$('#update_parent_two').load('/ #update_content_two');
}
Осталось прописать в интервал (
setInterval) нашу функцию
update_two (ставьте свое название новой функции):
Код
setInterval('update();update_two()', 1000);
Заметьте, функция
update_two() ставиться после
update() и между ними обязательно должен стоять
;, иначе работать не будет. То есть знак
; отделяет функции обновления. В общем, так можно добавлять новые функции сколько угодно.
Удачного использования, Ваш
Razip! :)
P.S. Если что-то не понятно — пишите в комментариях — отвечу. И да, не рекомендуется ставить маленькие числа в интервал обновления, т.к. uCoz не будет обрабатывать эти запросы. (могу ошибаться, давно ушел с uCoz)