Участок текста,
изображение или область изображения, идентифицируемая как гипертекстовая ссылка.
Если пользователь щёлкает текст,
изображение или область, объект/документ загружается в окно назначения.
Area
-объекты являются типом объекта Link
.
JavaScript 1.1:
добавлен обработчик JavaScript 1.2: добавлены свойства |
HTML-тэгами A
или AREA
или вызовом метода String.link
. Машина выполнения
JavaScript создаёт объекты Link
для всех тэгов
A
и AREA
в Вашем документе, предоставляющих атрибут HREF
.
Она помещает эти объекты в массив свойства document.links
.
Вы получаете доступ к объекту Link
по индексу в этом массиве.
Для определения ссылки тэгом A
или AREA
используется стандартный синтаксис HTML с добавлением обработчиков событий JavaScript.
Определение ссылки методом String.link
:
theString.link(hrefAttribute)
theString |
|
hrefAttribute |
Любая строка, специфицирующая атрибут |
Area
-объекты имеют следующие обработчики:
Link
-объекты имеют следующие обработчики:
Каждый Link
является location
-объектом
и имеет те же свойства, что и location
-объект.
Если Link
-объект является также Anchor
-объектом, он
имеет вхождения и в массиве anchors
, и в массиве links
.
Если пользователь щёлкает Link
-объект и переходит к документу
назначения (специфицируемому атрибутом HREF="locationOrURL"
),
свойство referrer
документа назначения содержит URL исходного
документа.
Вы можете использовать Link
-объект
для выполнения функции JavaScript, а не для перехода по ссылке, специфицировав URL-протокол javascript:
в атрибуте HREF
гиперссылки. Вам это может понадобиться, если
ссылка содержит объект Image
и Вы хотите выполнить код
JavaScript при щелчке по изображению. Либо Вам может понадобиться использовать
ссылку вместо кнопки для выполнения кода JavaScript.
Например, если пользователь щёлкает по следующим ссылкам, выполняются функции slower
и faster
:
<A HREF="javascript:slower()">Slower</A>
<A HREF="javascript:faster()">Faster</A>
Вы можете использовать объект Link
, чтобы
не выполнять никаких действий, специфицировав URL-протокол javascript:void(0)
в атрибуте HREF
гиперссылки. Вам это может понадобиться, если
ссылка окружает объект Image
и Вы хотите использовать обработчики
события ссылки для изображения. Если пользователь щёлкает по следующим ссылкам,
ничего не происходит:
<A HREF="javascript:void(0)">Click here to do nothing</A>
<A HREF="javascript:void(0)">
<IMG SRC="images\globe.gif" ALIGN="top" HEIGHT="50" WIDTH="50">
</A>
Свойство | Описание |
---|---|
| |
| Специфицирует хост и имя домена или IP-адрес сетевого хоста. |
| |
| |
| |
| |
| |
| |
| |
| |
| Позиция левого края ссылки по горизонтали в пикселах относительно левого края документа. |
| Позиция верхнего края ссылки по вертикали в пикселах относительно верхнего края документа. |
Метод | Описание |
---|---|
|
Кроме того, этот объект наследует методы watch
и unwatch
из объекта
Object
.
Пример 1.
Следующий пример создаёт гипертекстовую ссылку на якорь javascript_intro
:
<A HREF="#javascript_intro">Introduction to JavaScript</A>
Пример 2. Здесь создаётся гиперссылка на якорь numbers
в файле doc3.html
в окне
window2
. Если window2
не существует, оно создаётся.
<LI><A HREF=doc3.html#numbers TARGET="window2">Numbers</A>
Пример 3. Здесь пользователь переходит на x
вхождений назад
в списке history:
<A HREF="javascript:history.go(-1 * x)">Click here</A>
Пример 4. Здесь создаётся гиперссылка на URL.
Пользователь может использовать набор радио-кнопок для выбора из трёх URL.
Обработчик
onClick
ссылки устанавливает URL (свойство href
ссылки)
на основе выбранной кнопки. Ссылка также имеет обработчик onMouseOver
,
который изменяет свойство status
окна. Как показано в примере, Вы
обязаны вернуть
true для установки свойства window.status
в обработчике onMouseOver
.
<SCRIPT>
var destHREF="http://home.netscape.com/"
</SCRIPT>
<FORM NAME="form1">
<B>Choose a destination from the following list, then click "Click me" below.</B>
<BR><INPUT TYPE="radio" NAME="destination" VALUE="netscape"
onClick="destHREF='http://home.netscape.com/'"> Netscape home page
<BR><INPUT TYPE="radio" NAME="destination" VALUE="sun"
onClick="destHREF='http://www.sun.com/'"> Sun home page
<BR><INPUT TYPE="radio" NAME="destination" VALUE="rfc1867"
onClick="destHREF='http://www.ics.uci.edu/pub/ietf/html/rfc1867.txt'"> RFC 1867
<P><A HREF=""
onMouseOver="window.status='Click this if you dare!'; return true"
onClick="this.href=destHREF">
<B>Click me</B></A>
</FORM>
Пример 5: Массив links. В этом примере функция
linkGetter
использует массив links
для вывода значений
каждой ссылки текущего документа. Этот пример определяет также несколько ссылок
и кнопку для запуска
linkGetter.
function linkGetter() {
msgWindow=window.open("","msg","width=400,height=400")
msgWindow.document.write("links.length is " +
document.links.length + "<BR>")
for (var i = 0; i < document.links.length; i++) {
msgWindow.document.write(document.links[i] + "<BR>")
}
}
<A HREF="http://home.netscape.com">Netscape Home Page</A>
<A HREF="http://www.catalog.com/fwcfc/">China Adoptions</A>
<A HREF="http://www.supernet.net/~dugbrown/">Bad Dog Chronicles</A>
<A HREF="http://www.best.com/~doghouse/homecnt.shtml">Lab Rescue</A>
<P>
<INPUT TYPE="button" VALUE="Display links"
onClick="linkGetter()">
Пример 6: Обращение к Area-объекту через массив links.
Здесь код обращается к свойству href
первого Area
-объекта,
показанного в Примере 1.
document.links[0].href
Пример 7: Area-объект с обработчиками onMouseOver и onMouseOut. Здесь
выводится изображение globe.gif
. Это изображение использует карту
изображений/image map, которая определяет области верхней и нижней половин
рисунка. Обработчики onMouseOver
и
onMouseOut
выводят разные сообщения в статусной строке в
зависимости от того, проходит курсор мыши над верхней или нижней половиной
рисунка. Атрибут HREF
необходим при использовании обработчиков onMouseOver
и onMouseOut
, но в этом примере рисунок не должен быть гиперссылкой,
поэтому атрибут
HREF
выполняет javascript:void(0)
, которая ничего не
делает.
<MAP NAME="worldMap">
<AREA NAME="topWorld" COORDS="0,0,50,25" HREF="javascript:void(0)"
onMouseOver="self.status='You are on top of the world';return true"
onMouseOut="self.status='You have left the top of the world';return true">
<AREA NAME="bottomWorld" COORDS="0,25,50,50" HREF="javascript:void(0)"
onMouseOver="self.status='You are on the bottom of the world';return true"
onMouseOut="self.status='You have left the bottom of the world';return true">
</MAP>
<IMG SRC="images\globe.gif" ALIGN="top" HEIGHT="50" WIDTH="50" USEMAP="#worldMap">
Пример 8: Симуляция обработчика onClick Area-объекта
через использование атрибута HREF. Следующий пример использует атрибут HREF Area
-объекта
для выполнения функции
JavaScript. Выводимый рисунок, colors.gif
, показывает два цвета.
Верхняя половина рисунка имеет цвет antiquewhite, а нижняя - white. Если
пользователь щёлкает по верхней или нижней половине рисунка, функция setBGColor
изменяет цвет фона документа на цвет из рисунка.
<SCRIPT>
function setBGColor(theColor) {
document.bgColor=theColor
}
</SCRIPT>
Click the color you want for this document's background color
<MAP NAME="colorMap">
<AREA NAME="topColor" COORDS="0,0,50,25" HREF="javascript:setBGColor('antiquewhite')">
<AREA NAME="bottomColor" COORDS="0,25,50,50" HREF="javascript:setBGColor('white')">
</MAP>
<IMG SRC="images\colors.gif" ALIGN="top" HEIGHT="50" WIDTH="50" USEMAP="#colorMap">
Anchor
, Image
,
link
Вызывает обработчик для специфицированного события.
handleEvent(event)
event | Имя события, для которого специфицированный объект имеет обработчик события. |
Об обработке событий см. книгу
Строка, начинающаяся со знака хэша (#), которая специфицирует имя якоря в URL.
JavaScript 1.1. Это свойство
разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство hash
специфицирует часть URL. Это свойство применяется
только к HTTP URL.
Будьте внимательны при использовании этого свойства. Предположим, document.links[0]
содержит:
http://royalairways.com/fish.htm#angel
Тогда document.links[0].hash
возвратит #angel
.
Предположим, у Вас имеется такой код:
hash = document.links[0].hash;
document.links[0].hash = hash;
Теперь document.links[0].hash возвращает ##angel
.
Это поведение может быть изменено в последующих версиях.
Вы можете установить свойство hash
в любой
момент, хотя безопаснее делать это до изменения расположения. Если хэш, который
Вы специфицируете, не может быть найден в текущем месте, Вы получите ошибку.
Установка свойства hash
выполняет переход к именованному якорю без
перезагрузки документа. Это отличается от способа загрузки документа при
установке свойств link
.
См. в документе RFC 1738 (
)
полную информацию о хэше.
Link.host
, Link.hostname
,
Link.href
, Link.pathname
,
Link.port
, Link.protocol
,
Link.search
Строка, специфицирующая имя сервера, субдомен и домен.
JavaScript 1.1. Это свойство разрушено/запорчено по
умолчанию. О разрушении данных см. книгу
Свойство host
специфицирует часть URL. Свойство host
является подстрокой свойства hostname
. Свойство hostname
образуется путём конкатенации свойств host
и port
,
разделённых двоеточием. Если свойство port
имеет значение null,
свойство host
имеет то же значение, что и свойство hostname
.
Вы можете установить свойство host
в любой момент, хотя безопаснее
установить свойство href
для изменения местоположения. Если
специфицированный Вами хост не может быть найден в текущем месте, Вы получите
ошибку.
См. в Разделе 3.1 документа RFC 1738 (
)
полную информацию о hostname и port.
Link.hash
, Link.hostname
,
Link.href
, Link.pathname
,
Link.port
, Link.protocol
,
Link.search
Строка, содержащая полное имя хоста сервера, включая имя сервера, субдомен, домен и номер порта.
JavaScript 1.1.
Это свойство разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство hostname
специфицирует часть URL. Свойство hostname
образуется путём
конкатенации свойств host
и port
, разделённых
двоеточием. Если свойство
port
имеет значение 80 (это значение по умолчанию), свойство host
имеет то же значение, что и свойство hostname
.
Вы можете установить свойство hostname
в любой момент, хотя
безопаснее установить свойство href
для изменения местоположения.
Если специфицированное Вами имя хоста не может быть найдено в текущем месте, Вы
получите ошибку.
См. в Разделе 3.1 документа RFC 1738 (
)
полную информацию о hostname.
Link.host
, Link.hash
,
Link.href
, Link.pathname
,
Link.port
, Link.protocol
,
Link.search
Строка, специфицирующая полный URL.
JavaScript 1.1.
Это свойство разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство href
специфицирует весь URL целиком. Другие свойства объекта link
являются подстроками свойства
href
.
Вы можете установить свойство href
в любой момент.
См. в RFC 1738 (
)
полную информацию о URL.
Link.hash
, Link.host
,
Link.hostname
, Link.pathname
,
Link.port
, Link.protocol
,
Link.search
Строка, специфицирующая часть URL-пути в URL.
JavaScript 1.1.
Это свойство разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство pathname
специфицирует часть URL. Оно даёт детальную информацию о том, как может быть
достигнут специфицированный ресурс.
Вы можете
установить свойство pathname
в любой момент, хотя безопаснее
установить свойство href
для изменения местоположения. Если
специфицированный Вами pathname не может быть найден в текущем месте, Вы
получите ошибку.
См. в Разделе 3.1 документа RFC 1738 (
)
полную информацию о pathname.
Link.host
, Link.hostname
,
Link.hash
, Link.href
,
Link.port
, Link.protocol
,
Link.search
Строка, специфицирующая порт соединения, используемый сервером.
JavaScript 1.1.
Это свойство разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство port
специфицирует часть URL. Свойство port
является подстрокой свойства
hostname
. Свойство hostname
образуется путём
конкатенации свойств host
и port
, разделённых
двоеточием. Если свойство
port
имеет значение 80 (это значение по умолчанию), свойство host
имеет то же значение, что и свойство hostname
.
Вы можете установить свойство port
в любой момент, хотя безопаснее
установить свойство href
для изменения местоположения. Если
специфицированный Вами port не может быть найден в текущем месте, Вы получите
ошибку. Если свойство port
не специфицировано, по умолчанию
предполагается номер порта 80.
См. в Разделе 3.1 документа RFC 1738 (
)
полную информацию о port.
Link.host
, Link.hostname
,
Link.hash
, Link.href
,
Link.pathname
, Link.protocol
,
Link.search
Строка, специфицирующая начало URL до двоеточия включительно.
JavaScript 1.1.
Это свойство разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство protocol
специфицирует часть URL. Оно указывает метод
доступа к URL. Например, значение "http:"
специфицирует HyperText Transfer
Protocol, а значение "javascript:"
специфицирует код JavaScript.
Вы можете установить свойство protocol
в
любой момент, хотя безопаснее установить свойство href
для
изменения местоположения. Если специфицированный Вами не может быть найден в
текущем месте, Вы получите ошибку.
Свойство protocol
представляет схему
именования URL. См. в Разделе 2.1 документа RFC 1738 (
)
полную информацию о protocol.
Link.host
, Link.hostname
,
Link.hash
, Link.href
,
Link.pathname
, Link.port
,
Link.search
Строка, начинающаяся со знака вопроса (?), которая специфицирует запрос информации через URL.
JavaScript 1.1.
Это свойство разрушено/запорчено по умолчанию. О разрушении данных см. книгу
Свойство search
является частью URL. Это свойство применяется только к http URLs.
Свойство search
содержит пары переменная/значение; каждая пара
отделена амперсандом. Например, две пары в строке поиска могут выглядеть так:
?x=7&y=5
Вы можете установить свойство search
в любой момент, хотя
безопаснее установить свойство href
для изменения местоположения.
Если специфицированное Вами search не может быть найдено в текущем месте, Вы
получите ошибку.
См. в Разделе 3.3 документа RFC 1738 (
)
полную информацию о search.
Link.host
, Link.hostname
,
Link.hash
, Link.href
,
Link.pathname
, Link.port
,
Link.protocol
Строка, специфицирующая имя окна, в котором отображается содержимое, на которое указывает гиперссылка.
Свойство target
первоначально отражает значение атрибута TARGET
тэгов A
или AREA
; однако установка target
переопределяет этот атрибут.
Вы можете установить target
с
использованием строки, если строка представляет имя окна. Свойству target
не может быть присвоено значение переменной или выражения JavaScript.
Вы можете установить свойство target
в любой момент.
Здесь специфицируется, что ответы на форму musicInfo
отображаются в
окне msgWindow
:
document.musicInfo.target="msgWindow"
Form
Строка, содержащая содержимое соответствующего тэга A
.
Позиция левого края ссылки по горизонтали в пикселах относительно левого края документа.
Link.y
Позиция верхнего края ссылки по вертикали в пикселах относительно верхнего края документа.
Link.x
Дата последнего обновления: 28 мая 1999 года.
Copyright (c) 1999