JavaScript. Народные советы

Владимир Александрович Дронов

Оглавление Введение 9
Чего не дают обычные руководства? 9
Народные советы 10
Все это работает? 11
Типографские соглашения 11
Благодарности 13
ЧАСТЬ I. ОБЩИЕ ПРИЕМЫ ПРОГРАММИРОВАНИЯ 15
Глава 1. Полезные функции, методы и приемы программирования на JavaScript 17
Работа с переменными и их значениями 17
Как проверить существование переменной? 17
Как избежать конфликтов имен переменных? 18
Как создать константу? 19
Работа с функциями 20
Как создать необязательные параметры функции? 20
Как передать функции произвольное число параметров? 21
Возврат из функции нескольких значений 23
Реализация статических переменных 27
Работа с объектами 28
Как создать пользовательский объект? 28
Как создать пользовательский объект на основе уже имеющегося? 30
Как вызвать метод объекта-предка из метода объекта-потомка? 32
Как добавить новые свойства и методы в уже существующий объект? 33
Как в теле метода, добавленного к объекту String, Number или Boolean, получить доступ к значению этого объекта? 34
Манипуляции строковыми значениями 34
Преобразование нестрокового значения в строковый вид 35
Удаление пробелов в начале и конце строки 35
Подсчет всех вхождений подстроки в строку 39
Замены подстроки другой подстрокой 40
Замена всех подстрок в строке 43
Форматированный вывод значений в строковом виде 45
Манипуляции числовыми значениями 46
Преобразование строки в числовое значение 47
Округление числа до произвольного знака после запятой 48
Преобразование числа в шестнадцатеричную и восьмеричную системы счисления 49
Получение псевдослучайного числа в заданном диапазоне 50
Преобразование величины угла из градусов в радианы и наоборот 51
Манипуляции значениями даты и времени 52
Форматированный вывод значений даты и времени 53
Вычисление значения даты, отличающегося от заданного на определенное количество дней 56
Вычисление значения времени, отличающегося от заданного на определенное количество часов, минут и секунд 57
Что дальше? 58
Глава 2. Написание Web-сценариев и обработка событий 59
Получение доступа к Web-странице и ее элементам 59
Как получить доступ к нужному элементу Web-страницы? 59
Как получить доступ к телу Web-страницы? 62
В каком месте страницы поместить Web-сценарий? 63
Работа со сценариями — обработчиками событий 64
Как создать сценарий — обработчик события? 64
Список доступных событий 69
Получение информации о событии 71
Один обработчик событий сразу для нескольких элементов страницы 74
Как из обработчика события получить доступ к элементу страницы, в котором наступило это событие? 76
Как прервать "всплытие" события? 78
Отмена действия по умолчанию в ответ на событие 80
Перехват обработки событий 82
Работа с поведениями Microsoft Internet Explorer 83
Что такое поведения Microsoft Internet Explorer и как их создавать? 84
Как из поведения получить доступ к элементу страницы, к которому оно привязано, и телу страницы? 86
Как из поведения отследить момент окончания загрузки элемента страницы, к которому привязано поведение, и тела страницы? 87
Как создать новое свойство поведения? 89
Как создать новый метод поведения? 95
Как создать новое событие поведения? 97
Что дальше? 100
ЧАСТЬ II. РАБОТА С WEB-ОБОЗРЕВАТЕЛЕМ 101
Глава 3. Получение сведений о клиенте 103
Как выяснить разрешение и цветность экрана на компьютере клиента? 103
Как получить сведения о Web-обозревателе? 105
Как определить название и версию Web-обозревателя? 110
Что дальше? 115
Глава 4. Управление Web-обозревателем 117
Управление окнами Web-обозревателя 117
Как открыть окно Web-обозревателя? 117
Как получить доступ к созданному программно окну? 119
Как из созданного программно окна получить доступ к создавшему его окну? 121
Как изменить размеры и местоположение окна? 123
Как мне получить координаты и размеры окна? 124
Как выровнять окно по краю экрана? 125
Как активизировать нужное окно? 129
Как узнать положение полос прокрутки? 130
Как выполнить прокрутку содержимого окна? 130
Как закрыть окно Web-обозревателя? 132
Как проверить, было ли созданное программно окно Web-обозревателя закрыто пользователем? 132
Как отследить открытие, активизацию, изменение размеров и закрытие окна? 133
Как перенаправить посетителя на другую Web-страницу? 134
Как отключить контекстное меню? 136
Как добавить интернет-адрес открытой страницы в меню Избранное? 137
Как присвоить сайту значок? 138
Что дальше? 138
ЧАСТЬ III. РАБОТА С WEB-СТРАНИЦАМИ И ИХ ЭЛЕМЕНТАМИ 139
Глава 5. Простейшие манипуляции и эффекты 141
Управление внешним видом элементов страницы 141
Как изменить внешний вид элемента страницы? 141
Как временно скрыть элемент страницы? 144
Как изменить внешний вид сразу нескольких элементов страницы? 147
Как реализовать простейшие анимационные эффекты? 149
Как изменить содержимое страницы после ее загрузки? 155
Что дальше? 164
Глава 6. Работа с графикой 165
Простейшие эффекты с изображениями 165
Как заменить одно изображение другим после загрузки страницы? 165
Как создать изображение, меняющееся при наведении на него курсора мыши? 166
Как создать простейшую анимацию из графических изображений? 169
Как вывести на Web-страницу случайно выбранное изображение? 170
Как загрузить все нужные изображения до загрузки содержимого страницы? 171
Как рисовать на Web-странице? 173
Что дальше? 179
Глава 7. Работа с гиперссылками и средствами навигации 181
Как выполнить Web-сценарий в ответ на щелчок по гиперссылке? 181
Как заменить интернет-адрес и цель гиперссылки? 183
Как создать "горячее" изображение? 184
Как создать всплывающие подсказки для гиперссылок? 185
Как создать полосу навигации? 196
Что дальше? 203
Глава 8. Вывод информации в таблицах 205
Как получить доступ к нужному элементу таблицы? 205
Как создать таблицу программно? 209
Как выполнить постраничный вывод таблицы? 223
Как отсортировать строки в таблице? 229
Как выполнить поиск в таблице? 233
Как отфильтровать данные в таблице? 237
Что дальше? 243
Глава 9. Работа с фреймами 245
Как получить доступ к нужному фрейму и его содержимому? 245
Как проверить, открыта ли данная страница во фрейме или нет? 248
Как принудительно загрузить главную страницу сайта во фрейме? 249
Как при щелчке на гиперссылке обновить содержимое сразу нескольких фреймов? 251
Как изменить текст в заголовке окна Web-обозревателя при загрузке новой страницы во фрейм? 252
Что дальше? 253
Глава 10. Управление свободно позиционируемыми элементами 255
Простейшие эффекты со свободными элементами 255
Как управлять местоположением и размерами свободного элемента? 256
Как получить координаты и размеры элемента? 257
Как выровнять свободный элемент по краю его родителя? 258
Как выровнять один свободный элемент по краю другого? 262
Как сделать так, чтобы свободно позиционируемые элементы меняли свое расположение при изменении размеров окна Web-обозревателя? 266
Создание анимации с помощью свободно позиционируемых элементов 268
Как создать простейшую анимацию? 268
Как создать более сложную анимацию? 275
Как создать графический курсор мыши? 282
Как реализовать drag\'n\'drop? 284
Что дальше? 291
Глава 11. Создание мультимедийных элементов и управление ими 293
Работа с мультимедийными элементами 293
Как поместить на страницу мультимедийный элемент? 293
Параметры мультимедийного элемента 300
Свойства мультимедийного элемента 306
Методы мультимедийного элемента 310
События мультимедийного элемента 314
Как выяснить, установлен ли нужный модуль расширения? 319
Как использовать фильтры и преобразования Internet Explorer? 321
Что дальше? 335
ЧАСТЬ IV. РАБОТА С ДАННЫМИ 337
Глава 12. Простейший ввод/вывод данных 339
Использование стандартных окон Web-обозревателя для ввода данных 339
Как мне вывести строку текста или число? 339
Как предложить посетителю выбор из двух альтернатив? 340
Как запросить у посетителя данные? 341
Как вывести произвольный текст в строку статуса? 342
Как задать произвольный текст по умолчанию для строки статуса? 345
Как вывести предупреждение для посетителя прямо на Web-страницу? 346
Что дальше? 350
Глава 13. Сохранение данных и передача их другим Web-страницам 351
Как сохранить данные на клиентском компьютере? 351
Как передать данные другой Web-странице? 358
Что дальше? 364
Глава 14. Работа с Web-формами и элементами управления 365
Какие свойства, методы и события поддерживает Web-форма? 365
Какие свойства, методы и события поддерживают элементы управления? 367
Простейшие манипуляции с формами и элементами управления 371
Как получить доступ к нужной форме? 371
Как получить доступ к нужному элементу управления в форме? 372
Как получить значение элемента управления? 373
Как программно установить новое значение элемента управления? 380
Как отследить момент изменения значения элемента управления? 386
Как временно сделать элемент управления недоступным? 386
Как программно заполнить список? 388
Более сложные манипуляции с формами и элементами управления 392
Как ограничить набор символов, вводимых посетителем в поле ввода? 393
Как проверить введенные посетителем данные на корректность? 394
Как использовать диалоговые окна HTML? 399
Что дальше? 410
ЧАСТЬ V. СЛОЖНОЕ WEB-ПРОГРАММИРОВАНИЕ 411
Глава 15. Приемы сложного Web-программирования 413
Как создать страницу, состоящую из нескольких вкладок? 413
Как создать слайд-шоу? 416
Использование внешних баз данных 419
Как использовать внешние базы данных? 419
Как программно управлять элементом TDC? 426
Как отфильтровать нужные мне записи и отсортировать их? 429
Можно ли хранить в базе данных фрагменты страницы? 432
Как создавать HTML-приложения? 434
Что дальше? 440
Глава 16. Отладка Web-сценариев 441
Как найти синтаксические ошибки? 441
Как проследить выполнение сценария? 449
Заключение 455
Список литературы 457
Предметный указатель 459
8 Оглавление 7 Оглавление