Несмотря на отсутствие прямой связи с языком Java, JavaScript может обращаться к внешним свойствам и методам Java- апплетов, встроенных в страницу HTML. Разница сводится к тому, что апплеты существуют вне браузера, в то время как программы JavaScript могут работать только внутри браузера.
На первой взгляд кажется, что найти информацию по JavaScript несложно. Сначала создается впечатление, что ее можно увидеть везде: на сервере Natscape, в виде электронных руководств и примеров, во многих других местах. Тем не менее разыскать информацию об объектах, операторах, цветах и всем прочем в одном источнике, чтобы она была всегда под рукой, трудно.
Напротив, JavaScript, размещаются внутри HTML страницы и не могут существовать, как отдельные программы и функционируют, будучи запущенными в браузерах типа Netscape Navigator или Internet Explorer.
Следующая таблица сравнивает JavaScript и Java
.
JavaScript | Java |
---|---|
Не компилируемый клиентом. | Компилируемая клиентом перед запуском программы. |
Объектный язык. | Объектно-ориентированный. |
Внедренный в HTML - страницу. | Небольшие приложения, отделенные от HTML - страниц. |
Переменные типы данных, не объявляются. | Переменные типы данных должны быть объявленны (строгий контроль типов). |
Динамическое закрепление. Ссылки объекта, поверяются во время выполнения. | Статическое закрепление. Ссылки объекта, проверяются во время компиляции. |
<<New.>>
Объект. Включает Java аплет в web - страницу.
CODE=classFileName определяет имя файла апплета, которое вы хотите зарузить. Это имя файла должно иметь расширение .class.
HEIGHT=height внутри браузера определяет высоту апплета в пикселах.
WIDTH=width определяет ширину апплета в пикселах.
MAYSCRIPT позволяет апплету обращаться к JavaScript.
NAME=appletName определяет имя апплета. Вы можете обращаться к этому значению, используя свойство name.
CODEBASE=classFileDirectory определяет направление файла .class, если это отличается от направления, которое содержит HTML страницу.
ALT=alternateText определяет текст, чтобы показать браузерам, которые не поддерживают тег <APPLET>.
ALIGN=alignment определяет выравнивание небольшого приложения на HTML странице.
HSPACE=spaceInPixels определяет в пикселах интервал по горизонтали апплета внутри окна.
VSPACE=spaceInPixels определяет в пикселах интервал по вертикали апплета внутри окна.
<PARAM> Определяет параметры апплета.
NAME=parameterName определяет имя параметра.
VALUE=parameterValue определяет значение параметра.
Использование объекта апплет:
1. AppletName.propertyName 2. Document.applets [index] .propertyName
AppletName - значение атрибута NAME объекта applet.
index - целое число, представляющее апплет в документе, содержащем имя объекта applet.
PropertyName - одино из свойств, внесенных в список ниже.
Навигатор 3.0
Автор HTML страницы должен разрешить апплету обращаться к JavaScript, определяя атрибут MAYSCRIPT тега APPLET. Это предотвращает апплет от доступа JavaScript на странице без ведома автора страницы. Например, чтобы допустить апплет musicPicker.class к JavaScript на вашей странице, определите следующеее:
Вы можете ссылаться на апплеты, используя массив applet. Этот массив содержит все объекты Applet (тег <APPLET>) в документе в исходном порядке. Например, если документ содержит три апплета, то эти апплеты отражены как document.applets [0], document.applets [1], и document.applets [2].
Использование массива applet:
1. Document.applets [index]
2. Document.applets.length
index - целое число, представляющее апплет в документе, содержащем имя объекта Applet.
Чтобы получить число апплетов в документе, используйте свойство length:
document.applets.length
Элементы в массиве applets только для чтения. Например, утверждение document.applets [0] = "myApplet.class" не имеет никакого результата.
Объект Applet имеет следующие свойства:
Свойство | Описание | |
---|---|---|
name | Отражает атрибут NAME |
Следующий пример запускает апплет "musicApp":
<<New.>>
Объект. Определяет область изображения как отображение изображения. Когда пользователь нажимает область, ссылка гипертекста области загрузится в ее целевое окно.
Чтобы определять область, используйте стандарт HTML синтаксис с добавлением обработчиков событий onMouseOut и onMouseOver:
NAME = "mapName" определяет имя отображения. Вы можете определить это имя отображения в атрибуте USEMAP тега <IMG>.
AREA определяет область изображения как отображение изображения.
NAME = "areaName" определяет имя объекта Area . Этот атрибут не отражен в JavaScript (вы не можете обратиться к объекту Area по имени).
COORDS определяет координаты отображения изображения.
HREF = "location" определяет URL документа, чтобы загрузить, когда пользователь нажимает область. Любая область изображения, которая не имеет атрибута HREF, не делает функцию как гиперсвязь. Этот атрибут требуется, если вы включаете обработчики результата onMouseOut и onMouseOver.
SHAPE определяет форму отображения. "default" определяет область как невыполнть. Если опущено, используется "rect".
TARGET = "windowName" определяет окно, в которое будет загружена связь. windowName может быть существующее окно; это может быть имя фрейма, указанное в теге <FRAMESET>; или это может быть один из литералов фрейма name _top, _parent, _self, или _blank; это не может быть выражение JavaScript (например, это не может быть parent.frameName или windowName.frameName).
1. AreaName.propertyName 2. Document.links [index] .propertyName
AreaName - значение атрибута NAME объекта Area.
index - целое число, представляющее область в документе, содержащее имя объекта Area
PropertyName - один из свойств, описанных ниже.
Навигатор 3.0
Объекты Area находятся в массиве links. Вы не можете обратиться к объекту Area по имени; Вы должны использовать массив links. Например, если документ содержит три объекта области, эти объекты отражены как document.links [0], document.links [1], и document.links [2]. Для информации относительно массива links, смотрите объект Link.
Атрибут HREF требуется для объекта Area чтобы использовать обработчики результата onMouseOut или onMouseOver. Однако, если Вы создаете Area для изображения и не хотите, чтобы изображение связалось с ссылкой гипертекста когда нажато, определите JavaScript функцию в области аттрибута HREF, используя javascript: URL протокол. Например, если пользователь нажимает следующий объект Area, выполняется функция onTop.
Если Вы хотите, чтобы связь области ничего не делала, используйте javascript:void (0) в атрибуте HREF. Когда пользователь нажимает следующий объект Area, ничего не случиться:
Объект Area имеет следующие свойства:
Свойства | Описание | |
---|---|---|
hash | Определяет имя якоря в URL | |
host | Определяет хост и имя области, или адрес IP, сетевого хоста | |
hostname | Определяет хост части URL | |
href | Определяет целый URL | |
pathname | Определяет часть пути URL | |
port | Определяет порт связи, который сервер использует для связи | |
protocol | Определяет начало URL, включая двоеточие (:) | |
search | Определяет запрос | |
target | Отражает атрибут TARGET |
Пример 1.Обработчики событий OnMouseOver и onMouseOut.Следующий пример показывает изображение globe.gif. Изображение использует отображение изображения, которое определяет области для верхней и нижней половин изображения. OnMouseOver и onMouseOut обработчики событий показывают различные сообщения строки состояния в зависимости от местоположения мыши, и оставляет либо верхную либо нижную половины изображения. Атрибут HREF требуется при использовании обработчиков событий onMouseOver и onMouseOut, но в этом примере, изображение не нуждается в гипертекстовой связи , так что атрибут HREF выполняет javascript:void (0), который ничего не делает (для получения дополнительной информации смотрите оператор void).
Пример 2. Обращение к объекту через массив link. Следующийпример обращается к свойству href первого объекта Area, показанного в Примере 1.
Пример 3. Использование onClick с атрибутом HREF. Следующий пример использует атрибут HREF объекта Area, чтобы выполнить JavaScript функцию. Продемонстрированное изображение colors.gif, показывает два типовых цвета. Верхняя половина изображения - цветом "antiquewhite", а нижняя половина белая. Когда пользователь нажимает на верхную или нижную половины изображения, функция setBGColor изменяет цвет фона документа в цвет, выбранному пользователем.
Объект image Оператор void <---------------------------------------------------------------->
<< Измененный. >>
Свойство arguments - свойство объекта function.
Определять массив arguments изнутри объекта function:
this.arguments [index]
<<New.>>
Объект. Позволяет вам создавать массивы и работу с ними.
1. arrayObjectName = new Array () 2. arrayObjectName = new Array (arrayLength)Использование объекта array :
1. arrayObjectName.propertyName 2. arrayObjectName.methodName ( parameters)
arrayObjectName является либо именем нового объекта либо свойством существующего объекта.
arrayLength - начальная длина массива. Вы можете обращаться к этому значению, используя свойство length
propertyName - один из свойств, описанных ниже.
methodName - один из методов, описанных ниже.
Отсутствуют.
Navigator 3.0
Объект array - встроенный объект JavaScript.
Вы можете определять начальную длину, когда создаете массив. Следующий код создает массив из пяти элементов:
Когда Вы создаете массив, все его элементы первоначально недействительны. Следующий код создает массив из 25 элементов, затем присваивает значения первым трем элементам:
Длина массива увеличивается, если Вы приписываете значение элементу больше чем текущая длина массива. Следующий код создает массив нулевой длины, затем присваивает значение элементу 99, изменяя длину массива до 100.
Вы можете создавать плотный массив из двух или больше элементов, начинающихся с индекса 0, если Вы определяете начальные значения для всех элементов. Плотный массив - это массив, в котором каждый элемент имеет значение. Следующий код создает плотный массив с тремя элементами:
Объект array имеет следующие свойства:
Свойства | Описание | |
---|---|---|
length | Отражает число элементов в массиве | |
prototype | Позволяет вам, добавлять свойства к объекту array. |
Следующий пример создает массив, msgArray, нулевой длины, затем присваивает значения msgArray [0] и msgArray [99], изменяя длину массива до 100.
Смотрите также примеры для обработчика событий onError.
Объект image
<<New.>>
Метод. Возвращает угол полярной координаты (r, тета) который соответствует указанной декартовой координате (x, y).
Замечание: Этот метод существовал в 2.0, но не был описан.
Math.atan2 (x, y)
x является либо числовым выражением либо свойством существующего объекта, представляющие декартову координату x.
y является либо числовым выражением либо свойством существующего объекта, представляющие декартову координату y.
Navigator 2.0
Метод atan2 возвращает числовое значение.
Следующая функция возвращает угол полярной координаты:
Если выполняется getAtan2 значения (90,15), то возвращается 1.4056476493802699; если выполняется значение (15,90), то возвращается 0.16514867741462683.
Методы acos, asin, atan, cos , sin , tan
<<Changed. >>
Метод blur - метод объектов window и frame. Метод blur удаляет фокус из окна или фрейма. Передвижение фокуса посылает окно к фону в большинстве систем управления окнами.
frameReference.focus ()
windowReference.blur ()
frameReference - способ только для фреймов, как описано в объекте frame.
windowReference - способ только для окн, как описано в объекте window .
< <New. > >
Свойство. Строка, определяющая ширину, в пикселях, границы изображения.
imageName.border
imageName является либо именем объекта image либо элементом в массиве image.
Navigator 3.0
Свойстов border отражает атрибут BORDER тега <IMG >. Для изображений, созданных при image (), значение свойства border - 0.
border - свойство только для чтения.
Следующая функция показывает значение свойства border изображения, если значение - не ноль.
Свойства height , hspace, vspace, width
< <Changed. > >
Следующие свойства были добавлены к объекту button:
Свойства | Описание | |
---|---|---|
type | Отражает атрибут TYPE |
< <Changed. > >
Следующие свойства были добавлены к объекту checkbox :
Свойства | Описание | |
---|---|---|
type | Отражает атрибут TYPE |
< <Changed. > >
Метод close закрывает только окна, открытые JavaScript использующие метод close. Если вы хотите закрыть любое другое окно, которое допускает пользователя, выбирают, закрывается ли окно. Это - элемент(размер элемента) безопасности(акции), чтобы предотвратить " бомбы почты " содержащий self.close (). Однако, если окно имеет только один документ (текущий) в его истории сеанса, завершение допускается без, любой подтверждает. Это - частный случай для одноразовых окон, которые должны открыться другие окна и затем распорядиться собой.
< <New. > >
Свойство. Логическое значение, которое указывает закончила ли Navigator загружать изображение.
imageName.complete
imageName является либо именем объекта image либо элементом в массиве image.
Navigator 3.0
complete - свойство только для чтения.
Следующий пример показывает изображение и три переключателя. Пользователь может щелкать переключатели, чтобы выбрать, какое изображение показано. Щелчок другой кнопки позволяет пользователю, смотреть текущее значение complete собственности.
F-15 Eagle
F-15 Eagle 2
AH-64 Apache
< <Changed. > >
Следующие свойства были добавлены к объекту Date :
Свойства | Описание | |
---|---|---|
prototype | Позволяет вам, добавлять свойства к объекту Date. |
< <Changed. > >
Свойство defaultSelected - свойство объекта Option .
Следующий синтаксис был добавлен для свойства defaultSelected:
optionName.defaultSelected
< <New. > >
Свойство.
1. navigator.mimeTypes [index] .description 2. navigator.mimeTypes[mimeTypeName].description 3. navigator.plugins [index] .description 4. navigator.plugins[pluginName].description
Navigator 3.0
< <Changed. > >
Следующий синтаксис был добавлен для объекта document :
<BODY > ...
[onBlur = "handlerText"]
[onFocus = "handlerText"] ...
</BODY >
Обработчики событий OnBlur и onFocus определены в теге <BODY >, но - фактически обработчики событий для объекта window.
Следующие свойства были добавлены к объекту document :
Свойства | Описание | |
---|---|---|
applet | Массив, отражающий все applet в документе | |
plugin | Массив, отражающий все plugins в документе | |
image | Массив, отражающий все image в документе |
Следующие объекты - свойства объекта document
Не используйте локализацию как свойство объекта document ; используйте вместо свойство document.URL. Свойство document.location, которое является синонимом для document.URL, в будущем будет удален.
Вы можете очищать подокна документа (и устранять текст, формы элемента, и так далее, не восстанавливая изображение) используя document.close (); document.open (); document.write ().
< <New. > >
Свойство. Возвращает ссылку к объекту Plugin для plug-in, который обращается к типу MIME, или NULL, если никакой plug-in не обращается к типу MIME.
< <New. > >
Свойство. Имя файла plug-in.
1. navigator.plugins [ index] .filename 2. navigator.plugins [pluginName] .filename
Navigator 3.0
< <New. > >
Объект. Файл загружает элемент в форму HTML. Файл загружает элемент, позволяет пользователю, обеспечивая файл как вход.
<INPUT TYPE = "file" NAME = "fileUploadName" >
NAME = "fileUploadName" определяет имя объекта fileUpload (это - не имя файла, которое загружено). Вы можете обращаться к этому значению, используя свойство name.
fileUploadName.propertyName
fileUploadName - значение атрибута NAME объекта FileUpload.
propertyName - один из свойств, описанных ниже.
Navigator 3.0
Вы можете размещать объект FileUpload в форме, но вы не можете использовать JavaScript, чтобы изменить его в любое время.
Объект FileUpload имеет следующие свойства:
Свойства | Описание |
---|---|
name | Отражает атрибут NAME |
value | Отражает текущее значение файла загруженной области элемента; это соответствует имени файла. Это - свойство только для чтения. |
Следующий пример размещает объект FileUpload в форму и обеспечивает две кнопки, которые позволяют пользователю, показывать текущие значения свойств name и value.
Объект text
< <Changed. > >
Метод focus - метод объектов window и frame. Метод focus дает фокус окну или фрейму.
Следующий синтаксис был добавлен для метода focus:
frameReference.focus ()
windowReference.focus ()
frameReference - способ только для фрема, как описано в объекте frame.
windowReference - способ только для окна, как описано в объекте window.
< <Changed. > >
Следуещее было добавлено к синтаксису объекта form :
[ OnReset = "handlerText"]
Следующие объекты - свойства объекта form
Следующие методы были добавлены к объекту form
Следующие обработчики событий были добавлены к объекту reset
< <Changed. > >
Следующий синтаксис был добавлен для определения обработчика событий onBlur, или onFocus для frameset (framesets - окна, которые имеют не-пустые массивы frame):
<FRAMESET > ...
[<FRAME SRC = "locationOrURL" NAME="frameName" >]
[onBlur = "handlerText"]
[onFocus = "handlerText"] ...
<FRAMESET >
Следующий синтаксис был добавлен для определения обработчика событий onBlur или onFocus для фрейма (для фреймов, вы не можете определять эти обработчики результата в HTML):
frameReference.onblur=errorHandler
frameReference.onfocus=errorHandler
frameReference - только для фрейма, как описано в объекте frame .
errorHandler - нулевое ключевое слово, имя функции обработки ошибок, либо переменная либо свойство, которое содержит нулевой или имеющий силу справочник по функциям.
Чтобы создавать обработчик событий onBlur или onFocus для фрейма, вы должны управлять свойством onblur или onfocus и определять их во всех нижних регистрах (Вы не можете определять их в HTML).
Следующие обработчики событий были добавлены к framesets и объекту frame:
< <New. > >
Объект. Определяет строку код JavaScript, которую нужно компилировать как функция.
functionTarget = new Function ([arg1, arg2, ... argn], functionBody)
functionTarget - имя переменной или свойство существующего объекта. Это может также быть объект, сопровождаемый именем обработчика событий нижнего регистра, типа window.onerror.
arg1, arg2, ... argn - строковые аргументы, которые нужно использовать функцией как формальные имена аргумента.
functionBody - строка, определяющая код JavaScript, который нужно компилировать как тело функции.
Navigator 3.0
Объекты function оцениваются, каждый раз когда они используются. Это менее эффективно чем объявление функции и запроса внутри вашего кода, потому что объявленные функции компилируются.
Следующий код присваивает функцию переменной setBGColor. Эта функция устанавливает цветовой фон текущего документа.
Чтобы вызывать объект Function , вы можете определить переменное имя, так если бы это была функция. Следующий код выполняет функцию, определенная как переменная setBGColor:
Вы можете присваивать функцию обработчику событий следующи