Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Почему переменная дублируется? (https://javascript.ru/forum/jquery/26391-pochemu-peremennaya-dubliruetsya.html)

alex2012 06.03.2012 22:58

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

$("#photo_fancy_next”)
фото листается, потом когда закрываю а точнее скрываю вот так
Код:

$("#Close").click(function(){
 $("#rusellerOverlay").fadeOut(100);
return false
  });//кнопка закрытия окна

И снова открываю фото, потом кликая по ~$("#photo_fancy_next”) ~ переменная ~var selected2 ~в функции ~function foto
дублируется, причём сколько скрыл и открыл столько переменная и дублируется var selected2
Думал при закрытии удалять переменную но делаю что-то не верно поэтому не работает
Плюс видимо и за дублирования переменной, несколько фото выводится одновременно
За код сильно не судите знаю что гомно –код.
<div id="photo_fancy_box">
<img id="largeImg" src="imagesbig/avatar_02.gif" alt="530" title="1" style="display: inline;">
<img id="largeImg" src="imagesbig/avatar_10.gif" alt="531" title="2" style="display: inline;">не верно
<img id="largeImg" src="imagesbig/avatar_10.gif" alt="532" title="3" style="display: none;">
<img id="largeImg" src="imagesbig/avatar_15.gif" alt="533" title="4" style="display: none;">
</div>

/*вывод фото при клике по миниатюре 
------------------------------------*/   


$(function() {
	$(".thumbs a").click(function(){ // Выполняем если по кнопке кликнули
	var num = $(this).attr("title");//чтобы знать какие коменты принадлежат фото 
	var selected = $(this).attr("id");//номер фото 0,1,2,3,4,5 итд
   
		$("#imgLoad").show(); // Показываем прелоадер
		
		$.ajax({
			url: "next.php", // Обработчик
			type: "GET",       // Отправляем методом GET
			data: {"num": num, "id": id },//коменты к фото 
			cache: false,			
			success: function(responsev){
				if(responsev == 0){ // Смотрим ответ от сервера и выполняем соответствующее действие
					$("#imgLoad").hide();
				}else{
				
				 	$("#content1").children().remove();//удалить 
				               $("#content2").children().remove();//удалить 
					$("#content2").append(responsev);
					foto(selected);
				}
			}
		});
		
	});
});


//***************************************************передвигаем фото   ~function foto~

  function foto(selected) {
  $("#imgLoad").hide(); // скроем изображения  загрузчика 
  
  
    $("#photo_fancy_box img").hide(); // скроем изображения        
     var select= $("#photo_fancy_box img:eq("+selected+")");//номер фото 0,1,2,3,4,5 итд

     select.show();//покажем первую картинку
	 
   $("#photo_fancy_next").click(function(){// кнопка некст
      
      $(".comment").remove();//удалить сообщение после закрытия окно
      select.hide();//скроем текущее изображение
      select=select.next();//выберем следующее изображение

         //если следующего изображения нет , тогда выберем вновь первое изображение
         if (select.attr("src")==undefined){select=$("#photo_fancy_box img:eq(0)");
		 var selected2 = $(select).attr("alt");
				   };
		   
           select.show();//покажем вновь выбранное изображение. 
		   var selected2 = $(select).attr("alt");//номер фото 12345 итд
		//console.log(selected2);  
		alert(selected2);
		   $("#photo_fancy_next").attr({ title: selected2 });
		   
		   coment(selected2); //Функция вывода коментов
            });   
  
  };


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