Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Прошу помочь (https://javascript.ru/forum/misc/40795-proshu-pomoch.html)

wildf 20.08.2013 16:28

Цикл, массив, повторяющийся цикл
 
<select style="width: 155px; height: 20px;" onchange="this.value && frUrls(this.value)">
<option>Клац</option>
<option value="http://1.ru, http://2.ru, http://3.ru, http://4.ru, http://5.ru" > Links </option>
<option value="http://6.ru, http://7.ru, http://8.ru, http://9.ru, http://10.ru" >Links2</option>
</select>
<br>

<script type="text/javascript">
var frInt = false, time = 1000;

function frUrls(b)
{
if(frInt) clearInterval(frInt);
var a = 0, b = b.split(','), c = document.getElementById('main');
c.src = b[0];
frInt = setInterval(function()
{
a++;
c.src = b[a];
if(a+1 == b.length) clearInterval(frInt);
}, time);
}

wildf 20.08.2013 16:31

В общем есть такой скрипт. При выборе допустим Links он во фрейме (если надо могу опубликовать и его код) открывает поочередно все ссылки строки. Но на последней ссылке стопорится. Прошу подсказать что изменить нужно в нижней части кода, чтобы цикл - зациклился и ссылки открывались во фрейме пока я не закрою документ или допустим не нажму кнопку стоп.
Заранее благодарен.
С ув.

wildf 20.08.2013 23:06

Если кому что не понятно - спрашивайте). Может плохо объяснился

рони 20.08.2013 23:21

wildf,
if(a+1 == b.length) clearInterval(frInt); -> if(a+1 == b.length) a= -1;
:cray:

devote 20.08.2013 23:21

function frUrls(b) {
    var i = 0, c = document.getElementById('main');

    b = b.split(',');

    if (frUrls.intervalHandler) {
        clearInterval(frUrls.intervalHandler);
    }
    frUrls.intervalHandler = setInterval(start, 1000);

    start();

    function start() {
        c.src = b[i++];
        if (i == b.length) {
            i = 0;
        }
    }
}

wildf 21.08.2013 00:05

Цитата:

Сообщение от рони (Сообщение 268451)
wildf,
if(a+1 == b.length) clearInterval(frInt); -> if(a+1 == b.length) a= -1;
:cray:

Благодарю) помогло) :thanks:


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