This text is inside a layer
This text is inside a layer
мы пользуемся процедурой
onLoad
.
Нам необходимо начать
прокручивание слоя, как только страница будет загружена. В процедуре
обработки события
onLoad
мы пользуемся функцией
setInterval()
. Это один из
новых методов версии 1.2 языка JavaScript (то есть версии JavaScript,
реализованной в Netscape Navigator 4.0). Им можно пользоваться,
чтобы
вызывать некую функцию мвновь и вновь через определенные интервалы
времени. В прошлом для этого мы пользовались функцией
setTimeout()
.
Функция
setInterval()
работает почти так же, однако Вам нужно вызвать ее
всего лишь один раз.
С
помощью
setInterval()
мы вызываем функцию
move()
каждые 20
миллисекунд. А функция
move()
, в свою очередь, всякий раз смещает слой на
новую позицию. И поскольку мы вызываем эту функцию вновь и вновь, то мы
получаем быстрый скроллинг нашего текста. Все,
что мы нужно сделать в
функции
move()
- это вычислить новую координату для слоя и записать ее:
document.layers["myLayer2"].left= pos
.
Если Вы посмотрите исходный код этой части в онлайновом описании,
то увидите, что в действительности мой код выглядит несколько иначе - я
добавил некий фрагмент кода с тем, чтобы люди, работающие со старыми
версиями JavaScript-браузеров, не получали из-за этого никаких сообщений об
ошибках. Как этого можно достичь? Следующий
фрагмент кода будет
выполняться только на тех браузерах, которые воспринимают язык JavaScript
1.2:
Та же самая проблема возникает, когда мы работаем с объектом Image.
Мы можем аналогичным способом переписать кодекс.
Установка переменной
browserOK
решает эту проблему.
Следующий пример демонстрирует, как может осуществляться
перекрывание слоев:
This text is inside a layer
Достарыңызбен бөлісу: