Пятница, 22-Сентябрь-2017, 4.36 PM

Dletemplate.ru

Категории раздела
Наш опрос
Сколько тебе лет?
Всего ответов: 347
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Статьи

Главная » Статьи » JavaScript

Глава 5. Объекты, соответствующие тегам HTML - 2

Массив frames

К отдельным фреймам можно обращаться при помощи массива frames и свойства parent. Например, если имеется два фрейма, определенных в HTML-тегах:

<frameset rows="50%,50%"><frame name="top" src="file1.htm"><frame name="bot" src="file2.htm"></frameset>

то для обращения к первому фрейму вы можете использовать выражение parent.frames[0], и соответственно ко второму - parent.frames[1]. Таким образом, для обращения к отдельным фреймам и к свойству length массива frames используются выражения вида:

  • frameRef.frames[i]
  • frameRef.frames.length
  • windowRef.frames[i]
  • windowRef.frames.length

Для определения количества фреймов во фреймосодержащем документе применяется свойство length. Все данные массива frames предназначены только для чтения.

Свойства

Объект frame имеет следующие свойства:

  • frames - массив, содержащий все фреймы в окне;
  • name - соответствует атрибуту name тега <frame>;
  • length - количество дочерних фреймов в родительском окне (фрейме).

Кроме того, можно использовать такие синонимы:

  • parent - синоним для окна или фрейма с текущим фреймосодержащим документом;
  • self - синоним для текущего фрейма;
  • window - синоним для текущего фрейма.

Массив frames имеет всего одно свойство length, значением которого является количество дочерних фреймов в родительском фрейме.

Методы и обработчики событий

Во фреймосодержащих документах могут быть использованы методы clearTimeout() и setTimeout(). В теге <frameset> определяют обработчики событий, связанные с загрузкой и выгрузкой документов onLoad и onUnLoad. Об этих методах и событиях будем говорить позже. Пока мы ими пользоваться не будем. Забегать вперед тоже не очень хорошо.

Скрытый объект

Что это такое, и с чем его едят. Во первых, ничего такого особого в нем нет. Это поле, которое может передаваться из формы например на сервер, находиться в тегах <form> . . . </form>, при этом не отображаться на экране. Для чего оно нужно? Ну например, что-то формируется JS программой и это нужно передать, при этом выводить эту информацию нет смысла. Это текстовые поля позволяют сохранять определенные значения в структурах, отличных от переменных языка JS, хотя данные значения существуют до тех пор, пока загружен текущий документ. Скрытое поле, как уже говорилось является свойством объекта form и должно помещаться в тегах <form> . . . </form>.HTML-тег имеет синтаксис:

<input type="hidden"[name="hiddenName"][value="textValue"]>

Атрибут name задает имя поля и является необязательным. Значение текстового поля указывают при помощи атрибута value, который позволяет задавать и значение поля по умолчанию. К свойствам скрытых объектов можно обращаться посредством одного из следующих выражений:

  • fieldName.propertyName
  • formName.elements[i].propertyName

где fieldName - имя скрытого поля, заданное в атрибуте name тега <input>, а formName - имя формы, в которой определено скрытое поле.

Свойства

Скрытый объект имеет свойства:

  • name - соответствует атрибуту name тега <input>;
  • value - соответствует атрибуту value тега <input>;
  • type - соответствует атрибуту type и содержит значение "hidden".

Скрытые объекты не имеют методов и обработчиков событий.

Пример

В следующей форме определено скрытое поле hfield шириной 20 символов, по умолчанию имеет значение "page 1":

<form name="hiddenField"><input name="hfield" type="hidden" size=20 value="page 1"></form>

Значение этого поля можно изменить с помощью оператора следующего вида:

document.hiddenField.hfield.value = "page 2";

Объеткт image и массив images

Браузер Microsoft Internet Explorer версии ниже 4, не поддерживает массив images.В браузере рисунки рассматриваются как объекты image, а все рисунки, содержащиеся в текущем документе, помещаются в массив images, который можно использовать для обращения к любому рисунку, определяемому тегом <img>. В частности, можно динамически обновлять изображения, изменяя их свойство src. Примеров тому в интернете очень много. В частности и на этом сайте. Для начала приведем тег <img>, распишем полностью:

<img src="fileOrUrl" [alt="altText"] [lowsrc="fileOrUrl"] [width=w] [heigth=h] [border=b] [vspace=v] [hspace=h]>

В атрибуте src содержится имя или адрес URL файла, который нужно вывести в документе. Рисунок должен храниться в формате GIF, JPEG, или PNG. С помощью атрибута alt задается альтернативный текст, появляющийся на экране: в момент загрузки текста, если пользователь заблокировал вывод изображений и поясняющая надпись под курсором мыши. Атрибут lowsrc, NN его поддерживает, IE - честно сказать не знаю, не пробовал, да и без надобности - считаю устаревшим и не имеет смысла его использовать. Он позволяет предварительно выводить на экран изображение с низким разрешением. При этом рисунок загружается в два этапа. Атрибуты width (ширина) и height (высота) позволяют задать размеры рисунка в пикселах, атрибут border - ширину рамки в пикселах, а атрибуты vspace и hspace - размеры вертикального и горизонтального зазоров между границами изображения и другими элементами документа. Для обращения к свойствам объекта image используется следующий синтаксис:

document.images[i].propertyName

где i - индекс элемента массива, который соответствует нужному рисунку. Первым рисунком в документе будет document.images[0]. Массив images является свойством объекта document, поэтому при обращении к рисунку необходим префикс document к имени массива. Тег <img> не имеет атрибута name, поэтому выражение вида "document.imgName" приведет к ошибке.

Свойства

Все свойства объектов image соответствуют атрибутам тега <img>, за исключением свойства complete. Эти свойства, кроме свойств src и lowsrc, значения которых могут быть изменены динамически, имеют значения только для чтения:

  • src - соответствует атрибуту src тега <img>;
  • lowsrc - соответствует атрибуту lowsrc тега <img>;
  • height - соответствует атрибуту height тега <img>;
  • width - соответствует атрибуту width тега <img>;
  • border - соответствует атрибуту border тега <img>;
  • vspace - соответствует атрибуту vspace тега <img>;
  • hspace - соответствует атрибуту hspace тега <img>;
  • complete - содержит булево значение, которое указывает, загружен рисунок в браузер или нет (true - загружен, false - нет);
  • type - для объектов image содержит значение "image".

Перед загрузкой рисунка появляется его рамка, внутри которой отображается строка, заданная в атрибуте alt (в версии 5 и выше IE, пользователь при желании может отключить рамки с alt-текстом отображаемые в момент загрузки рисунка). Рисунок можно изменять динамически, присваивая атрибуту src или lowsrc в качестве значения новый адрес URL (Честно говоря такое не применял, локально проверить это не удается, так как lowsrc загрузится мгновенно. А так, как такой способ считаю устаревшим - не пытался применить. Ошибок по крайней мере при применении этого атрибута не выдает.)

Методы и обработчики событий

Объект image не имеет методов.

Обработчики событий:

  • onAbort - обработка события, возникающего при прерывании загрузки рисунка, т.е. при нажатии клавиши [Esc] или активизации новой гиперсвязи, в то время, когда рисунок загружается;
  • onError - обработка события, связанного с ошибкой загрузки рисунка, т.е. когда невозможно найти рисунок по указанному адресу URL ;
  • onLoad - соответствующее событие, инициализируется в начале загрузки рисунка. При загрузке анимированного GIF-а это событие возникает несколько раз и зависит от числа кадров анимационной последовательности.

Объект link и массив links

Объект link (гиперсвязь) отображается как участок текста или графического объекта, щелчок мыши на котором позволяет перейти к другому Web-ресурсу. Тег языка HTML, а мы помним, что рассматриваем объекты соответстующие тегам HTML, имеет следующий вид:

<a href=locationOrURL[name="anchorName"][target="windowOrFrameName"][onClick="handlerText"][onMouseOver="handlerText"]>linkText</a>

Атрибут href определяет имя файла, или адрес URL для объекта, который загружается при активизации гиперсвязи. Атрибут name задает имя гиперсвязи, превращая ее в объект anchor (метку). С помощью атрибута target в определенный фрейм текущего фреймосодержащего документа можно загрузить документ, URL которого указан в значении атрибута href. Атрибут linkText представляет собой текст, отображаемый в HTML-документе как гиперсвязь, которая активизируется щелчком мыши. Для обращения к свойству объекта link используются выражения типа:

document.links[i].propertyName

где i - индекс данной связи в массиве гиперсвязей links текущего документа.

Масив links

В программе на языке JavaScript к гиперсвязям можно обращаться как к элементам массива links. Например, если в документе определены два тега < a href>, то в JS-программе к этим гиперсвязям можно обращаться с помощью выражений document.links[0] и document.links[1]. Синтаксис выражений для обращений к массиву links следующий:

  • document.links[i]
  • document.links.length

где переменная i - индекс гиперсвязи. Значением свойства length является количество гиперсвязей в текущем документе. Объекты link представляют собой объекты только для чтения, поэтому динамически изменять гиперсвязи в документе нельзя.

Свойства

Для объекта link определены следующие свойства:

  • hash - задает имя метки в адресе URL, если она существует ;
  • host - задает часть hostname:port адреса URL, определенного в гиперсвязи;
  • hostname - задает имя хоста и домена (или IP-адрес) в адресе URL, определенном в гиперсвязи;
  • href - задает полный адрес URL, определенный в гиперсвязи;
  • pathname - задает часть адреса URL, которая описывает путь к документу и находится после части hostname:port;
  • port - задает коммуникационный порт, который использует сервер;
  • protocol - задает начало адреса URL, включая двоеточие, например http:;
  • target - соответствует атрибуту target тега <a href>.

Массив links имеет всего одно свойство, length, значением которого является количество гиперсвязей в текущем документе.

Методы и обработчики событий

Для объекта link методы не определены. В тегах <a href> могут использоваться обработчики событий щелчка мыши и ее перемещения - onClick и onMouseOver. Конкретно обо всех событиях будем говорить позже.

Пример

При подведении указателя мыши на гиперсязь, в строке состояния браузера появится текст "Текст в строке состояния при подведении мыши на гиперсязь".

Вот текст:

<a href="#" onMouseOver="window.status='Текст в строке состояния при подведении мыши на гиперсязь';  return true">Подведите сюда курсор мыши</a>

В данном случае гиперсвязь указывает на пустой документ - "#". Это выбрано для примера в случае щелчка на гиперсвязи ничего не грузилось.
Категория: JavaScript | Добавил: mas (16-Сентябрь-2006)
Просмотров: 866 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: