Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык программирования javascript 16.02.12.doc
Скачиваний:
7
Добавлен:
31.08.2019
Размер:
2.86 Mб
Скачать

Модальное окно

В HTML-документе допустимо создание модального окна для просмотра, т.е. такого окна, которое будет активным до тех пор, пока пользователь не закроет. Подобные окна часто применяются для создания пользовательских окон ввода информации или окна About. Модальное окно открывается

методом showModalDialog() объекта window.

Синтаксис:

showModalDialog (sURL [, vArguments [, sFeatures]])

  • sURL — URL документа, загружаемого в модальное окно;

  • vArgumentsпередает в диалоговое окно произвольный набор параметров. Непосредственная передача данных производится метод diaiogArguments объекта window. Возврат значений из диалогового окна в документ реализуется свойством returnvalue объекта window.

  • sFeatures — параметры, задающие внешний вид окна; допустимые значения:

  • dialogWidth: number — ширина окна;

  • dialogHeight: number — высота окна;

  • diaiogTop: number — ордината верхнего левого угла окна;

  • diaiogLeft: number — абсцисса верхнего левого угла окна;

  • center: { yes | no | 1 | 0 } — расположение окна по центру экрана.

Пример:

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; Charset=UTF-8">

<script type="text/javascript" src="jquery.js"></script>

</head>

<body>

<script>

window.showModalDialog ("script1.html","dialogHeight:100; dialogWidth:200; center:no");

</script>

</body>

</html>

Не все браузеры хорошо работают с модальными окнами.

Для начала немного про ООП

В JavaScript’е объект можно создать двумя способами. Первый способ создание функции. В JavaScript объектом является любая функция:

function Obj() { // объекты принято называть с большой буквы this.x = 1;

this.y = 2

Ключевое слово this является ссылкой на объект Obj, this.x и this.y – это его свойства Obj, т.е., говоря просто, это локальные переменные которые действуют только внутри объекта Obj. Так же у объекта есть методы. Метод – это функция внутри объекта. Работает она тоже только внутри него. У каждого объекта в JavaScript есть свойство prototype, при помощи которого можно добавлять новые методы объекту:

function Obj(x, y) { // объявляем объект

this.x = x; // добавляем свойство X равное параметру x, переданному в функцию

this.y = y; // добавляем свойство Y равное параметру y, переданному в функцию

}

Obj.prototype.method = function() { // добавляем метод

return this.x + this.y; // который будет возвращать сумму двух свойств

}

Мы создали наш объект и добавили ему свойства и метод, теперь осталось только создать его и начать использовать. Объект создается при помощи ключевого слова new, и может быть присвоен переменной или использоваться сразу:

//можно так

var o = new Obj(4, 5);

alert(o.method()); // доступ к свойствам и методам происходит через точку

// а можно так

alert(new Obj(7, 8).method());

Неудобство такого подхода в создании объектов заключается в том, что в данном случае объект надо обязательно инициализировать при помощи ключевого слова new. Тут на помощь приходит второй способ создания объекта, а именно объектный литерал:

var Obj = {} // а вот, собственно, и он

Внутри объектного литерала свойства и методы записываются парами

свойство: значение (имя_метода: функция)

и отделяются запятыми. Похоже на ассоциативный массив ключ=>значение.

var Obj = { // создаем объект