Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

 
liveinternet.ru: показано количество просмотров и посетителей

Библиотека :: Компьютеры и Программирование :: А.В. Фролов, Г.В. Фролов - Сценарии JavaScript в активных страницах Web
<<-[Весь Текст]
Страница: из 116
 <<-
 
rm);">
        
  

   Помимо функций addCookie, findCookie и removeCookie, предназначенных для 
работы с cookie, в сценарии определена переменная szColor, предназначенная для 
хранения выбранного пользователем цвета фона, а также функции btnGo, chkRadio и 
setDefault.
   Функция btnGo прежде всего проверяет наличие параметра cookie с именем Count.
 Если такого параметра нет, сценарий считает, что пользователь просматривает 
этот документ в первый раз. В этом случае функция btnGo добавляет два параметра 
cookie с именами Count и bgColor:
addCookie("Count","0",10);
addCookie("bgColor",szColor,10);
   Первый из них предназначен для хранения счетчика посещений, а второй - для 
хранения цвета фона.
   Далее функция btnGo формирует документ HTML с приглашением для пользователя, 
просматривающего документ в первый раз, и завершает свою работу.
   В том случае, когда сразу после вызова функция btnGo нашла параметр cookie с 
именем Count и получила его значение, это значение увеличивается на единицу и 
записывается обратно. Кроме того, оно отображается в тексте документа:
document.write("

Рады видеть вас снова!

"); document.write("Вы посетили эту страницу в " + szCnt.bold()+" раз."); Затем функция btnGo устанавливает цвет фона сформированного документа HTML в соответствии со значением, извлеченным из параметра cookie с именем bgColor: document.bgColor=findCookie("bgColor"); Функция chkRadio вызывается, когда пользователь включает один из переключателей выбора цвета: function chkRadio(form,value) { szColor = value; addCookie("bgColor",szColor,10); } Эта функция записывает значение выбранного цвета в переменную szColor, а также в параметр cookie с именем bgColor. И, наконец, функция setDefault удаляет параметр cookie с именем Count и устанавливает в переменной szColor белый цвет фона, принятый по умолчанию: function setDefault(form) { removeCookie('Count'); szColor="White"; } Эта функция вызывается, когда пользователь нажимает кнопку с надписью "Параметры по умолчанию": Обратите внимание, что данная кнопка имеет тип reset. Когда пользователь нажимает на нее, в форме включается переключатель, задающий белый цвет фона. Это происходит потому, что указанный переключатель определен с параметром CHECKED, а кнопка типа reset устанавливает все органы управления формы в исходное состояние. Получение cookie расширением сервера Web В этом разделе мы приведем пример документа HTML, создающего cookie, а также исходные тексты расширения сервера ISAPI, отображающее на динамически создаваемой странице заголовки HTTP этого документа. Когда браузер создает cookie, расширение сервера получает заголовок HTTP_COOKIE и отображает его. Наш документ аналогичен описанному ранее в разделе “Записная книжка Cookies Notepad” (рис. 7.8). Рис. 7.8. Документ HTML, работающий с cookie и расширением сервера ISAPI Дополнительно мы разместили в документе кнопку Send. С помощью этой кнопки содержимое окна редактирования и заголовок HTTP_COOKIES передается расширению ISAPI сервера Web. Расширение ISAPI отображает содержимое cookie, как это показано на рис. 7.9. Рис. 7.9. Результат работы расширения ISAPI Исходный текст документа HTML вы найдете в листинге 7.4. Листинг 7.4. Файл chapter7/NotebookISAPI/NotebookISAPI.html Cookies demo