Зміст
1. Призначення і застосування JavaScript, загальні відомості
1.1 Вступ
1.2 Поняття об'єктної моделі стосовно до JavaScript
1.2.1 Властивості
1.2.2 Методи
1.2.3 Події
1.3 Розміщення коду на HTML-сторінці
1.4 URL-схема JavaScript
1.5 Обробники подій
1.6 Підстановки
1.7 Вставка (контейнер SCRIPT - примусовий виклик інтерпретатора)
1.7.1 Розміщення коду всередині HTML-документа
1.7.2 Умовна генерація HTML-розмітки на стороні браузера
1.8 Ієрархія класів
2 Програмуємо властивості вікна браузера
2.1 Поле статусу
2.2 Програмуємо status
2.3 Програмуємо defaultStatus
2.4 Поле location
2.4.1 Властивості
2.4.2 Методи
2.4.3 Історія відвідувань (History)
2.4.4 Тип браузера (об'єкт Navigator)
2.5 Управління вікнами
2.5.1 window.alert ()
2.5.2 window.confirm ()
2.5.3 window.prompt ()
2.5.4 window.open ()
2.5.5 window.close ()
2.5.6 window.focus ()
2.5.7 window.setTimeout ()
2.5.8 window.clearTimeout
2.6 Фрейми (Frames)
2.6.1 Ієрархія фреймів
2.6.2 Іменування фреймів
2.6.3 Передача фокуса у фрейм
1. Призначення і застосування JavaScript, загальні відомості
1.1 Вступ
Гіпертекстова інформаційна система складається з безлічі інформаційних вузлів, безлічі гіпертекстових зв'язків, визначених на цих вузлах і інструментах маніпулювання вузлами і зв'язками. Технологія World Wide Web - це технологія ведення гіпертекстових розподілених систем в Internet , і, отже, вона повинна відповідати загальним визначенням таких систем. Це означає, що всі перераховані вище компоненти гіпертекстової системи повинні бути і в Web.
Web, як гіпертекстову систему, можна розглядати з двох точок зору. По-перше, як сукупність відображуваних сторінок, пов'язаних гіпертекстовими переходами (посиланнями - контейнер ANCHOR). По-друге, як безліч елементарних інформаційних об'єктів, що становлять відображувані сторінки (текст, графіка, мобільний код і т.п.). В останньому випадку безліч гіпертекстових переходів сторінки - це такий самий інформаційний фрагмент, як і вбудована в текст картинка.
При другому підході гіпертекстова мережа визначається на безлічі елементарних інформаційних об'єктів самими HTML-сторінками, які і відіграють роль гіпертекстових зв'язків. Цей підхід більш продуктивний з точки зору побудови відображуваних сторінок "На льоту" з готових компонентів.
При генерації сторінок в Web виникає дилема, пов'язана з архітектурою "клієнт-сервер". Сторінки можна генерувати як на стороні клієнта, так і на стороні сервера. У 1995 році фахівці компанії Netscape створили механізм управління сторінками на клієнтській стороні, розробивши мову програмування JavaScript .
Таким чином, JavaScript - Це мова керування сценаріями перегляду гіпертекстових сторінок Web на стороні клієнта. Якщо бути більш точним, то JavaScript - це не тільки мова програмування на стороні клієнта. Liveware, прародитель JavaScript, є засобом підстановок на стороні сервера Netscape. Однак найбільшу популярність JavaScript забезпечило програмування на стороні клієнта.
Основна ідея JavaScript складається в можливості зміни значень атрибутів HTML-контейнерів і властивостей середовища відображення в процесі перегляду HTML-сторінки користувачем. При цьому перезавантаження сторінки не відбувається.
На практиці це виражається в тому, що можна, наприклад, змінити колір фону сторінки або інтегровану в документ картинку, відкрити нове вікно або видати попередження.
Назва "JavaScript" є власністю Netscape. Реалізація мови, здійснена розробниками Microsoft, офіційно називається Jscript. Версії JScript сумісні (Якщо бути зовсім точним, то не до кінця) з відповідними версіями JavaScript, тобто JavaScript є підмножиною мови JScript.
JavaScript стандартизований ECMA (European Computer Manufacturers Association - Асоціація європейських виробників комп'ютерів). Відповідні стандарти носять назви ECMA-262 і ISO-16262. Цими стандартами визначається мова ECMAScript, який приблизно еквівалентний JavaScript 1.1. Відзначимо, що не всі реалізації JavaScript на сьогодні повністю відповідають стандарту ECMA. В рамках даного курсу ми у всіх випадках будемо використовувати назву JavaScript.
1.2 Поняття об'єктної моделі стосовно до JavaScript
Для створення механізму управління сторінками на клієнтській стороні було запропоновано використовувати об'єктну модель документа. Суть моделі у тому, що кожен HTML-контейнер - це об'єкт, який характеризується трійкою:
В· властивості;
В· методи;
В· події.
Об'єктну модель можна представити як спосіб зв'язку між сторінками і браузером. Об'єктна модель - це представлення об'єктів, методів, властивостей і подій, які присутні і відбуваються в програмному забезпеченні браузера, у вигляді, зручному для роботи з ними коду HTML і вихідного тексту сценарію на сторінці. Ми можемо з її допомогою повідомляти наші побажання браузеру і далі - відвідувачеві сторінки. Браузер виконає наші команди і відповідно змінить сторінку на екрані.
Об'єкти з однаковим набором властивостей, методів і подій об'єднуються у класи однотипних об'єктів. Класи - це описи можливих об'єктів. Самі об'єкти з'являються тільки після завантаження документа браузером або як результат роботи програми. Про це потрібно завжди пам'ятати, щоб не звернутися до об'єкта, якого немає.
1.2.1 Властивості
Багато HTML-контейнери мають атрибути. Наприклад, контейнер якоря ... має атрибут HREF , який перетворює його в гіпертекстове посилання:
intuit
Якщо розглядати контейнер якоря ... як об'єкт, то атрибут HREF буде задавати властивість об'єкта "Якір". Програміст може змінити значення атрибута і, отже, властивість об'єкта:
document.links [0]. href = "intuit.htm";
Не у всіх атрибутів можна змінювати значення. Наприклад, висота і ширина графічної картинки визначаються по першій завантаженої в момент відображення сторінки зображенні. Усі наступні картинки, які замінюють початкову, масштабуються до неї. Справедливості заради слід зауважити, що в Microsoft Internet Explorer розмір картинки може змінюватися.
Для спільності картини властивостями в JavaScript наділені об'єкти, які не мають аналогів в HTML-розмітці. Наприклад, середовище виконання, звана об'єктом Navigator, або вікно браузера, яке є взагалі самим старшим об'єктом JavaScript.
1.2.2 Методи
У термінології JavaScript методи об'єкта визначають функції зміни його властивостей. Наприклад, з об'єктом "Документ" пов'язані методи open (), write (), close (). Ці методи дозволяють згенерувати або змінити зміст документа. Наведемо простий приклад:
function hello ()
{
id = window.open ("", "example", "width = 400, height = 150 ");
id.focus (); id.document.open ();
id.document.write ("
Привіт!
");
id.document.write ("
");
id.document.write ("
id.document.write ("onClick = 'window.opener.focus ();
window.close (); '> ");
id.document.close ();
}
У цьому прикладі метод open () відкриває потік запису в документ, метод write () здійснює цю запис, метод close () закриває потік запису в документ. Всі відбувається так само, як ...