|
|
|
| Скажите пожалуйста, как можно реализовать бегущую строку на JavaScript
Условия работы:
1 не использовать тег marquee
2 при загрузке страницы меню не должно выезжать из-за границ экрана, а должно быть видно сразу (после чего начинается движение)
3 не должно быть разрывов, т.е. когда конец строки вышел из-за границы экрана (невидимой области) начинается эта же строка заново
Есть какие идеи? | |
|
|
|
|
|
|
|
для: Петр
(14.02.2008 в 14:52)
| | ножно. на таймер вешаете функцию и двигаете текс в нужном направление | |
|
|
|
|
|
|
|
для: Петр
(14.02.2008 в 14:52)
| |
<form>
<input type="text" id="t1"/>
</form>
<script type="text/javascript">
var msg="Строка двигается, круто правда?! Да она всетаки двигается!!!";
function gogogo()
{
var char=msg.charAt(0);
msg=msg.substring(1)+char;
document.getElementById('t1').value=msg;
}
setInterval("gogogo()", 100);
</script>
|
| |
|
|
|
|
|
|
|
для: Dimon_K
(15.02.2008 в 15:48)
| | Это совсем не то.. во первых не в текством поле, кому это вообще надо..
нужно в поле div и чтобы без промежутков, после последней буквы идет сразу же первая снова | |
|
|
|
|
|
|
|
для: Петр
(15.02.2008 в 17:52)
| | Так там после последней буквы сразу идет первая, после "!" идет "C" промежутков там нет.
А в поле input я вывел строку потому что если строка больше длинны поля она прячется за границу поля. Если выводить строку в div то нужно чтобы она по длинне не привышала длинну div - элемента. И вместо
document.getElementById('t1').value=msg;
|
написать
document.getElementById('t1').innerHTML=msg;
|
Если строка будет превышать размер дива по ширине то она растянет его по высоте, будет смотрется не очень. Можно, конечно воспользеваться CSS свойством overflow:hidden, но тогда нужно явно указать ширину и высоту дива. Высоту нужно указивать в зависемости от размера шрифта.
Кстати элемент input можно привести в соответствующий вид с помощью CSS. | |
|
|
|