#dynamic
#динамический
Вопрос:
Я не могу понять, почему это не работает. Я пытаюсь заставить разные теги DIV иметь разное текстовое содержимое в циклическом цикле.
<script type="text/javascript"> var text1 = ['foo', 'bar', 'baz']; var i1 = 0, var text2 = ['hug', 'kiss001', 'bank22']; var i2 = 0, $(document).ready(function() { setInterval(function (){ $("#DIV1").fadeOut(function () { $("#DIV1").text(text[i1 % text1.length]).fadeIn(); }); }, 1000); setInterval(function (){ $("#DIV2").fadeOut(function () { $("#DIV2").text(text[i2 % text2.length]).fadeIn(); }); }, 1000); }); </script>
<div id="DIV1"><div>
<div id="DIV2"><div>
Ответ №1:
Кажется, есть куча синтаксических ошибок ( text
вместо text1
/ text2
, нет закрывающего / div и т.д. Здесь все работает нормально: http://jsbin.com/obaqi4/3
Комментарии:
1. Спасибо … вот страница: myorphan.com/about.htm как устранить выцветание фона. Я только хочу, чтобы он изменил текст.
2. Поместите текст, который вы хотите изменить, в отдельный элемент. Так, например, вместо
<div id="st1">...</div>
используйте<div id="st1"><div id="st1_inner">...</div></div>
, затем настройте javascript для #st1_inner и примените все стили к внешнему div. Это обеспечит сохранение внешнего стиля, в то время как текст будет исчезать и изменяться.3. Кстати, проблема в том, что при установке непрозрачности fade in / out весь элемент исчезает. Чтобы просто убрать текст (текст сам по себе не является элементом), вы должны обернуть его в элемент, который представляет просто текст.