Реклама на сайте Advertise with us

Ява редирект

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 22.10.04
Сообщения: 260
Рейтинг: 230

Ссылка на сообщениеДобавлено: 27/03/06 в 18:21       Ответить с цитатойцитата 

Киньте ява рандом редирект, который редиректит на случайно выбранный урл. У меня есть вот такой код:
Код:
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function go_to(url) {
window.location=url;
}
function rand_link() {
var a;
a = 1+Math.round(Math.random()*4);   // a = random number between 1-4
if (a==1) go_to("http://site1.com");
if (a==2) go_to("http://site2.com");
if (a==3) go_to("http://site3.com");
if (a==4) go_to("http://site4.com");
}
// End -->
</SCRIPT>

но работает криво (периодически выскакивает пустая страница).
Рейтинг, естественно, с меня!

0
 

Ревнивый муж подобен турку

С нами с 01.03.06
Сообщения: 4302
Рейтинг: 905

Ссылка на сообщениеДобавлено: 27/03/06 в 18:26       Ответить с цитатойцитата 

Первое, что приходит в голову, поставь в конце переход на страницу 5.

Если тебе надо просто подрочить, жми сюда

4
 



С нами с 22.10.04
Сообщения: 260
Рейтинг: 230

Ссылка на сообщениеДобавлено: 27/03/06 в 18:42       Ответить с цитатойцитата 

Хм... Т.е. просто добавить
Код:
if (a==5) go_to("http://site5.com");
и остальное не менять?

0
 

Ревнивый муж подобен турку

С нами с 01.03.06
Сообщения: 4302
Рейтинг: 905

Ссылка на сообщениеДобавлено: 27/03/06 в 18:52       Ответить с цитатойцитата 

Точно по коду не скажу - боюсь наебать.

Но я имел в виду уже после "if" поставить безусловный переход на пятую страницу.

Если тебе надо просто подрочить, жми сюда

0
 



С нами с 06.03.03
Сообщения: 1650
Рейтинг: 1096

Ссылка на сообщениеДобавлено: 28/03/06 в 00:22       Ответить с цитатойцитата 

да, все верно, не хватает условия, когда а=5.
потому что a = 1+Math.round(Math.random()*4);
т.е. если убрать 1+ - то будет генериться число от 0 до 4, соответственно как есть - это от 1 до 5.

4
 



С нами с 22.10.04
Сообщения: 260
Рейтинг: 230

Ссылка на сообщениеДобавлено: 28/03/06 в 00:37       Ответить с цитатойцитата 

webboxxx писал:
да, все верно, не хватает условия, когда а=5.
потому что a = 1+Math.round(Math.random()*4);
т.е. если убрать 1+ - то будет генериться число от 0 до 4, соответственно как есть - это от 1 до 5.

Вроде понял. Но для верности, если не сложно, подправь мой код для 4-х url (чайник я, чайник icon_sad.gif)

0
 



С нами с 06.03.03
Сообщения: 1650
Рейтинг: 1096

Ссылка на сообщениеДобавлено: 28/03/06 в 02:59       Ответить с цитатойцитата 

замени
a = 1+Math.round(Math.random()*4);
на
a = 1+Math.round(Math.random()*3);

4
 



С нами с 14.10.03
Сообщения: 374
Рейтинг: 609


Передовик Master-X (01.10.2016)
Ссылка на сообщениеДобавлено: 28/03/06 в 09:58       Ответить с цитатойцитата 

Можно попробовать использовать конструкцию switch-case-default, как наиболее логичную для данного примера.

Пам пам

4
 



С нами с 22.10.04
Сообщения: 260
Рейтинг: 230

Ссылка на сообщениеДобавлено: 28/03/06 в 10:13       Ответить с цитатойцитата 

Всем спасибо. Все работает. Ответы оценил.

0
 

осинизатор

С нами с 10.03.03
Сообщения: 8491
Рейтинг: 819

Ссылка на сообщениеДобавлено: 28/03/06 в 15:15       Ответить с цитатойцитата 

Во-первых, надо писать Джава, а не Ява. Глаза режет. Во-вторых, это даже не Джава, а Джава Скрипт (Java Script). Ну а в-третьих, такие вещи лучше всего реализуются через массив, т.е. так:

Код:

<SCRIPT LANGUAGE="JavaScript">
<!--
var url_array = new Array();
// помещаем сюда адреса страниц для перехода в следующем виде:
url_array.push("http://www.microsoft.com/");
url_array.push("http://www.ibm.com/");
url_array.push("http://www.cnn.com/");
url_array.push("http://www.google.com/");
url_array.push("http://www.borland.com/");
url_array.push("http://www.zend.com/");

window.location = url_array[Math.round(Math.random() * (url_array.length - 1))];
-->
</SCRIPT>


и все! если не считать строк с URL-ами сайтов для перехода, то получается всего 2 строки кода icon_smile.gif

ушел на завод

4
 

осинизатор

С нами с 10.03.03
Сообщения: 8491
Рейтинг: 819

Ссылка на сообщениеДобавлено: 28/03/06 в 15:36       Ответить с цитатойцитата 

Ну и в совсем короткий код в качестве выебона icon_smile.gif :
Код:

<SCRIPT LANGUAGE="JavaScript">
<!--
var url_array = new Array("http://www.cnn.com/", "http://www.ibm.com/", "http://www.zend.com/");
window.location = url_array[Math.round(Math.random() * (url_array.length - 1))];
-->
</SCRIPT>


Адреса сайтов прописываются прямо в определении массива. Их (адресов) может быть сколько угодно. Такой вариант кода можно использовать в случае, когда список адресов задается жестко и не меняется по ходу выполнения скрипта. Т.е. это именно тот случай, о котором писал топикстартер.

ушел на завод

4
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »