Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Написал скрипт, а он работает не так как надо( (https://javascript.ru/forum/misc/27606-napisal-skript-rabotaet-ne-tak-kak-nado.html)

Chiz 18.04.2012 20:32

Написал скрипт, а он работает не так как надо(
 
<div  onClick="slide(false)">Назад</div>
<div onClick="slide(true)">Вперед</div><div class="comBlock">
<div class="nowP"></div><br>

<script type="text/javascript">
var photos= new Array();
 for(i=0;i<22;i++){
photos[i]='http:\/\/naruto-smash.ucoz.ru\/Chiz\/images\/0'+i+'.png';
if(i==5)photos[i]='http:\/\/naruto-smash.ucoz.ru\/Chiz\/images\/0'+i+'.gif';
if(i==0)document.write('<img src="'+photos[i]+'" id="mW'+i+'" title="Изображение №'+i+'" class="active">');
if(i>0){document.write('<img src="'+photos[i]+'" id="mW'+i+'" title="Изображение №'+i+'" class="hide">');}
}

</script>

</div>

<script type="text/javascript">
function slide(bul){
var nH='#'+$('.active').attr('id');
var s=nH.charAt(3);
dlina=photos.length;
if(bul == true){
 s++;
  if(s==dlina)
  s=0;
}
if(bul == false){
 s--;
if(s==-1)
 s=(dlina-1);
}
 $(nH).removeClass('active').addClass('hide').removeAttr('style'); 
 var id='#mW'+s;
 $(id).removeClass('hide').addClass('active');
 $('.nowP').html('Страница '+s+' из '+dlina);
var w=$('.active').width();
if(w>540)$('.comBlock').width(600);else{
if(w>480 && w<=540)$('.comBlock').width(540);
else{$('.comBlock').width(520);}
 }
 }
</script>

В общем суть проблема такова: когда нажимаю перключать вперед то скрипт работает нормальо до десятой картинки, потом после десятой он показывает вторую...

Mixxx 19.04.2012 13:42

Цитата:

Сообщение от Chiz
скрипт работает нормальо до десятой

Строку
var s=nH.charAt(3);

замените на
var s = parseInt(nH.substring(3))

Chiz 19.04.2012 15:15

Большое спасибо!Все работает.


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