Перезапись текста в div(диалог)
Доброго времени суток,
столкнулся с необходимостью реализации системы коротких диалогов между 2 персонажами на дивах/спанах. Алгоритм следующий - 1) Есть 2 кнопки, одна актив(1), вторая скрытая(2). 2) После нажатия актив кнопки(1) выводится див с текстом(1), скрытая кнопка(2) переходит в активное состояние, 1я скрывается. 3) После нажатия актив кнопки(2) выводится див с текстом(2), первый див закрывается. Актив кнопки снова меняются. 4) После нажатия актив кнопки(1) текст в диве(1) должен заменяться на заданный(т.е. происходить обновление дива). Количество обновлений(т.е. реплик героев) должно задаваться, как и сам текст, в коде. Пробовал заменять текст в дивах при помощи метода текст $('#item1').text('Новая Строка 2'); но нужного результата добиться не удалось :( Само переключение между дивами как тут http://javascript.ru/forum/159088-post2.html Подскажите, пожалуйста, способ для перезаписи текста в дивах/спанах, согласно описаному алгоритму, и переключение между активными кнопками. :help: |
varName,
а когда реплики закончатся, тогда что? |
Цитата:
|
varName,
:-?
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8">
<style type="text/css">
div.tratata, span.tratata{
display: none;
}
div.tratata.active, span.tratata.active{
display: block;
}
span.tratata{
cursor: pointer;
}
.tratata.first {
background-color: #FF9900;
}
.tratata.last{
background-color: #339900;
}
</style>
<script type="text/javascript">
window.onload = function() {
var spans = document.querySelectorAll('span.tratata'), divs = document.querySelectorAll('div.tratata'), arr = ['один','два','три','четыре','пять'] ;
var click = function (c) {
var a = 1 - c ;
return function () {
this.classList.remove('active');
divs[a].classList.remove('active');
if(!arr.length) return;
spans[a].classList.add('active');
divs[c].classList.add('active');
divs[c].innerHTML = arr.shift();
}
};
spans[0].addEventListener("click", click(0), false);
spans[1].addEventListener("click", click(1), false);
}
</script>
</head>
<body>
<span class="tratata active">1</span>
<span class="tratata">2</span>
<div class="tratata first"></div>
<div class="tratata last"></div>
</body>
</html>
|
Цитата:
|
varName,
вы что-нибудь о классах в css или поиске элементов, читали? |
varName,
смотрите пост 4 снова добавлен class tratata :( надеюсь элементов с таким классом у вас нет |
Спасибо огромное, выручили!
|
| Часовой пояс GMT +3, время: 11:26. |