Бегущая строка с меняющимся текстом
AzriMan, я ужасно извиняюсь, но у меня нет никакого визуального редактора ни в Firefox, ни в IE. Может, мне надо зарегистрироваться, чтобы его видеть?
У меня такая задача: чтобы текст в бегущей строке каждый раз менялся (брался из массива). Вообще возможно ли это с тегом marquee? Если нет, как еще это можно сделать? Вот код файла, который я для этого составила. Заранее спасибо! <html> <head></head><body> <marquee id="ut" scrolldelay="100" width="500" bgcolor="#ff9900" height="20"></marquee> <script language="JavaScript"> var set = ["На март 2009 от родителей поступило 130 просьб на проведение домашних консультаций.","К настоящему времени проведено 50 консультаций на дому.","Всего с начала года мы провели 310 консультаций на дому."]; var utObject = document.getElementById("ut"); var m=0; function change (m) {utObject.innerHTML = set[m]; m=1-m;}; setInterval (change(m), 5000); </script> </body> </html> |
Цитата:
|
Я зарегистрировалась и разметила свой код:
<html> <head></head><body> <marquee id="ut" scrolldelay="100" width="500" bgcolor="#ff9900" height="20"></marquee> <script language="JavaScript"> var set = ["На март 2009 от родителей поступило 130 просьб на проведение домашних консультаций.","К настоящему времени проведено 50 консультаций на дому.","Всего с начала года мы провели 310 консультаций на дому."]; var utObject = document.getElementById("ut"); var m=0; function change (m) {utObject.innerHTML = set[m]; m=1-m;}; setInterval (change(m), 5000); </script> </body> </html>[HTML][/html] |
попробуйте так:
var set = ["На март 2009 от родителей поступило 130 просьб на проведение домашних консультаций.","К настоящему времени проведено 50 консультаций на дому.","Всего с начала года мы провели 310 консультаций на дому."]; var utObject = document.getElementById("ut"); var m=0; // function change () { utObject.innerHTML = set[m]; m=1+m; } setInterval (change, 5000); // мне не понятно единственное - для чего вы делаете m=1-m;? |
Ответ
Чтобы менять m с 0 на 1 и обратно. Чтобы проверить, что что-то меняется.
|
Аа.. значит изменение с 0 на 1 и обратно и было задумано. ок. просто в "массиве" три элемента, поэтому мне стало не понятно. ок. что насчет того варианта, который я написал?
|
А кажется Вы еще ничего не написали... Или Вы имеете в виду другой мой вопрос, про innertext? Там все получилось. Просто теперь я пытаюсь с помощью innerHTML менять текст в бегущей строке, а мой файл не работает.
|
А, я поняла! Я не заметила этот Ваш ответ! Извините
|
Спасибо! Ваш файл работает. Но, к сожалению, есть некоторые проблемы. В Firefox все более-менее нормально, но в IE текст появляется кусками, не целыми фразами, и время, которое он находится на странице, почему-то разное, неодинаковое. Работает со странностями.
Все равно, большое Вам спасибо, что потратили на меня свое время! Я подумаю о каком-нибудь другом варианте бегущей строки |
пожалуйста.
p.s. не знаю, возможно дело в этом, попробуйте такой вариант (изменилсяс вызов по таймеру): var set = ["На март 2009 от родителей поступило 130 просьб на проведение домашних консультаций.","К настоящему времени проведено 50 консультаций на дому.","Всего с начала года мы провели 310 консультаций на дому."]; var utObject = document.getElementById("ut"); var m=0; // function change (m) { utObject.innerHTML = set[m]; m=1-m; // вернул как и было } //setInterval (change, 5000); setInterval(function(){change(m)},5000); // по поводу IE - затрудняюсь сказать, почему так происходит. не сталкивался. |
Часовой пояс GMT +3, время: 00:55. |