@Majestty

Как сделать чтобы при повторном вызове функции, она не дублировалась?

Добрый день, есть функции которые срабатывают при клике к примеру click1. Дальше идет вызов другой функции при клике по другой кнопке click2, если необходимо вернутся в предыдущее состояние. То необходимо опять осуществить первый клик click1. Но при повторном клике функция дублируется, так как висит на еще одном клике.
Вот код:
$(".box-120").click(function(event){
     $(".size120 .tea a.plus").on('click');
	 $(".size120 .tea a.minus").on('click');
    	$('#choice-size').fadeOut("slow");
    	$(".box.tea_set.box-pack-120").fadeIn();
    	$(".box.tea_set.box-pack-250").fadeOut();
    	$("span.backet-120").css("display","inline")
    	$("span.backet-250").css("display","none")
    	 $(".box.tea_set .cell").text("");
		jQuery('.tea_set.box .cell.full').each(function(index){
		jQuery(this).attr('class','cell').removeAttr('index');
	});
		$(".clear-box").removeClass('full');
		$(".tea a.plus").removeClass('full');
	   	$("input.full").val("").addClass('empty').removeClass('full').attr('names',"");
    	$(".item.box.size250").removeClass("size250").addClass("size120");
	    event.preventDefault();
//120
	//sbor_value plus\minus
	$(".size120 .tea a.plus").click(function(){
		var id = jQuery(this).attr('index');
		var class_name = jQuery(this).attr('class_name');
		if(!id) alert('неверный id у чая');
		jQuery('.size120 .tea_set.box.box-pack-120 .cell:not(".tea_set.box .cell.full"):first').addClass(class_name).addClass('full').attr('index',id);
		$(".tea a.minus").removeClass('empty');
		if(jQuery('.size120 .tea_set.box.box-pack-120 .cell.full').length == 6){
			$(".size120 .clear-box").addClass('full');
			$(".size120 .tea a.plus").addClass('full');
			$(".size120 .tea a.minus").removeClass('empty');
			return false;
		}
		return false;
	});
	$(".size120 .tea a.minus").click(function(){
		var id = jQuery(this).attr('index');
		var class_name = jQuery(this).attr('class_name');
		if(!id) alert('неверный id у чая');
		jQuery('.size120 .tea_set.box.box-pack-120 .cell.full[index='+id+']:last').removeClass(class_name).removeClass('full').attr('index','');
		if(jQuery('.size120 .tea_set.box.box-pack-120 .cell.full').length < 6){
			$(".size120 .clear-box").removeClass('full');
			$(".size120 .tea a.plus").removeClass('full');
			return false;
		}
		return false;
	});
	
	$(".size120 .basket_list_spec").click(function(){
			if(jQuery('.size120 .tea_set.box.box-pack-120 .cell.full').length<6 && $( ".backet-120").is(':visible') ){
			alert('Коробка должна быть собрана полностью');
			return false;
		}
			if($( ".backet-120").is(':visible') ){
      $(".zakaz-box").show("slow");
  }
	});
	//120

	});
  • Вопрос задан
  • 271 просмотр
Пригласить эксперта
Ответы на вопрос 1
@Majestty Автор вопроса
Все это вызывается в одной функции так как меняется class div и для него по селекторам работает другая функция. И есть необходимость его менять несколько раз, если человек не определился с выбором.
Я понимаю что можно прописать отдельный div и всю его структуру. Как с html организовать я знаю.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы