Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Разный текст


Автор: Nлья 1.9.2005, 17:15
Я прошу прощения за вопрос, но ведь это "для начинающих".

Вообщем я и есть начинающий, вааяю второй сайт в Дримвеере, потихоньку осваиваю мануал.

Внимание вопрос:

Как сделать так чтоб какая-то часть страницы (текст) все время был разный. Люди жмут рефреш и все также, а текст новый.

Уверен для вас вопрос смешной, но все когда-то начинали.

Автор: Aliance 1.9.2005, 19:08
Код

var quotes = new Array();
quotes[quotes.length] = {quote: "цитата1.", author: "vingrad"};
quotes[quotes.length] = {quote: "цитата2.", author: "aliance"};

function getSaying() {
    var currIndex = Math.floor(Math.random() * (quotes.length));
    var output = "<p>" + quotes[currIndex].quote;
    output += "<span>&nbsp;&nbsp;&nbsp;-- " + quotes[currIndex].author;
    output += "</span></p>"
    return output;
}


Код

<script type="text/javascript">document.write(getSaying())</script>

Автор: Nлья 1.9.2005, 21:16
Что за хороший человек!

Дай Бог тебе здоровья!

До сих пор не въехал че к чему, но вставил и работает!

Спасибо! Нечеловеческое!

И если не затруднит, как сделать так, чтобы текст побежал?

Автор: Aliance 1.9.2005, 21:54
Nлья, незачто smile
Регистрируйся у нас и ты не пожалеешь, а только получишь множество доп. функций.

Не забудь прочесть правила форума: http://forum.vingrad.ru/index.php?s=&act=SR&f=27

Цитата(N @ 1.9.2005, 22:16)
До сих пор не въехал че к чему

Смотри, комментирую:

Сперва мы создаем массив цитат.
Затем каждому массиву пишем данные в виде объекта с 2 свойствами цитатой и автором (если нужна только цитата - это можно убрать и хранить в массиве строки с текстом просто.)
Мы пишем quotes[quotes.length] т.к. не знаем количество записей.
Далее в переменной currIndex мы генерируем случайное число от нуля до того числа, которому равно quotes.length.
А далее читаем и вставляем текст из массива со случайным индексом в документ smile

Автор: Nлья 1.9.2005, 23:38
Спасибо!

А чтоб автор на строчку ниже и вправо?

И как там на счет текста?

Автор: Sardar 2.9.2005, 00:08
Цитата(Aliance @ 1.9.2005, 20:54)
Мы пишем quotes[quotes.length] т.к. не знаем количество записей.

Вообще так стоит писать если добавляем в массив элементы или лучше воспользоваться функцией push. Если же наполняем "с нуля", то короче и наглядней литеральный массив:
Код
var quotes = [
 {quote: "цитата1.", author: "vingrad"},
 {quote: "цитата2.", author: "aliance"}
 ];

Цитата(N @ 1.9.2005, 22:38)
И как там на счет текста?

Закинь текст в тег http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/marquee.asp?frame=true. В стандартах не существует, но зародилось от ИЕ, теперь все современные браузеры поддерживают.

Автор: Aliance 2.9.2005, 15:37
Цитата(N @ 2.9.2005, 00:38)
А чтоб автор на строчку ниже и вправо?

восьмую строчку замени на:
Код

   output += "<span classs="author">&nbsp;&nbsp;&nbsp;-- " + quotes[currIndex].author;

И с помощью CSS делай что угодно...

Автор: o.s.a. 2.9.2005, 17:36
Цитата(Sardar @ 2.9.2005, 02:08)
теперь все современные браузеры поддерживают.

НО FF 1.0.6 не все аттрибуты этого тега поддерживает

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)