Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   При нажатии на кнопку появляется другой текст (https://javascript.ru/forum/misc/41454-pri-nazhatii-na-knopku-poyavlyaetsya-drugojj-tekst.html)

ami_moor 14.09.2013 21:23

При нажатии на кнопку появляется другой текст
 
Доброго времени суток!
Помогите разобратся, в js совсем новенькая
Мне нужно реализовать следующее: при открытии страницы печатается текст, при нажатии на кнопку появляется другой текст, при нажатии в 3тий раз опять другой текст, и так по кругу.
Не могу никак завязать строковый массив с кнопкой, ничего не работает(( может вообще другим способом можно
Вот что имеем:
<!DOCTYPE HTML>
<html>
<head>
	<meta http-equiv="content-type" content="text/html" />
	<meta name="author" content="" />
    <link rel="stylesheet" type="text/css" href="style.css" />
	<title>Proverbs</title>
	
<script>
var chr = -1;
var txt = "текст под номером один!"
var l = txt.length
var p = ""

function changetext() {
	chr++;
	t = document.all["text"].innerHTML
	tt = t.substring(0,t.length-p.length)
		if(txt.charAt(chr)!="<") {
			document.all["text"].innerHTML= tt + txt.charAt(chr) + p
		}
		else {
			document.all["text"].innerHTML= tt + txt.substring(chr, chr+4) + p
			chr=chr+3
		}
	setTimeout("changetext()", 80)
}

function str(num) {
	var s = ""
	for(i=0; i<num; i++) {
	s = s + " "
	}
		return s
}
</script>

</head>
<body onload="changetext()">
    <p id="text" face="MS Sans Serif" size="1"></p>
    <input type="button" value="Поменять текст"> </input>
</body>
</html>


Помогите, буду очень признательна

bes 15.09.2013 21:33

<button>click</button>
<div></div>
<script>
(function () {
	var mas = [1, 2, 3];
	var n = 0;
	var but = document.getElementsByTagName("button")[0];
	var div = document.getElementsByTagName("div")[0];
	but.onclick = function () {
		div.innerHTML = mas[n];
		n++;
		if (!mas[n]) {
			n = 0;
		}
	}
	but.click();
})();
</script>

Ymerla 12.06.2015 12:45

Цитата:

Сообщение от bes (Сообщение 272340)
<button>click</button>
<div></div>
<script>
(function () {
	var mas = [1, 2, 3];
	var n = 0;
	var but = document.getElementsByTagName("button")[0];
	var div = document.getElementsByTagName("div")[0];
	but.onclick = function () {
		div.innerHTML = mas[n];
		n++;
		if (!mas[n]) {
			n = 0;
		}
	}
	but.click();
})();
</script>

у меня вопрос по этому коду.а как сделать чтобы не числа были, а текст?

Decode 12.06.2015 16:56

Ymerla,
<button>click</button>
<div></div>
<script>
    (function () {
        var mas = ['lorem', 'ipsum', 'dolore', 'sit', 'amet'];
        var n = 0;
        var but = document.getElementsByTagName("button")[0];
        var div = document.getElementsByTagName("div")[0];
        but.onclick = function () {
            div.innerHTML = mas[n % mas.length];
            n++;
        }
        but.click();
    })();
</script>


Часовой пояс GMT +3, время: 10:00.