Сделать кнопки next и prev
Здравствуйте. Подскажите пожалуйста, как сделать кнопки вперед и назад в моей ситуации.
Есть некоторое количество строк YtiFjPVZKHI jl8VYsZKptA mt4aXXmwoaQ H5Ykd-21j_I ... Нужны функции, которые будут поочередно проходить строки и выдавать их содержимое. Допустим имеем две ссылки <a href="#" onclick="next();">next</a> <a href="#" onclick="prev();">prev</a> Если нажмем на next то пусть будет alert(YtiFjPVZKHI); Если еще раз нажмем next то будет уже алерт второй строки alert(jl8VYsZKptA); Когда перешли к последней строке, то нажав на next будет алерт первой строки. Для prev тоже самое, только переход будет назад. |
Ну как вариант ваши функции должны сами просчитывать к какой записи обращаться, а кнопки уже будут вызывать функции.
И A href не самый лучший выбор, в данной ситуации. |
например
var a[0]=new Array (); a[0]= 'gfgfh'; a[1]= 'gfhtyhy'; a[2]= ' frghrjyjhyj'; a[3]= ' fghfhgh'; var i = 0; function next () { alert (a[i]); i++; if (i>3) i=0; } function next () { alert (a[i]); i--; if (i<0) i=3; } |
Спасибо, а как быть если не знаешь, сколько элементов в массиве?
if (i>a.lenfht) не работает (вместо if (i>3)) |
И функция prev() не так как нужно работает. Она начинает с последнего назад, а нужно чтобы с текущего
var a=new Array () a[0]= '1' a[1]= '2' a[2]= ' 3' a[3]= ' 4' var i = 0; function next () { alert (a[i]); i++; if (i>3) i=0; } function prev () { alert (a[i]); i--; if (i<0) i=3; } |
Отслеживайте количество элементов в массиве с помощью n.
Она и должна работать с текущего! |
Или вы используете некст а потом прев!
|
Цитата:
|
var a= ['1', '2', '3', '4'], i=0; function nextPrev (bool) { bool ? ((i === a.length-1) ? i=0 : i++) : ((i === 0) ? i=a.length-1 : i--); alert (a[i]); } nextPrev(1) для next и nextPrev(0) для prev. |
Спасибо, то что нужно |
Часовой пояс GMT +3, время: 21:13. |