Показать сообщение отдельно
  #1 (permalink)  
Старый 01.02.2014, 15:26
Аспирант
Отправить личное сообщение для Эллурн Посмотреть профиль Найти все сообщения от Эллурн
 
Регистрация: 31.03.2010
Сообщений: 30

Двойное событие
Всем доброго времени суток =)
Надеюсь, сможете помочь в нелегком деле))

На сайте событие click отрабатывает (похоже, всегда) по 2 раза. Вот ивой пример с пояснениями:
var clickCount = 0;
	$("#button-cart").one("click", function(event) {
		event.preventDefault();
		++clickCount;
		if (clickCount%2 == 1) {
			console.log(clickCount); //Выводит дважды одно число!
			form = $(this).closest("form");
			data = {"items": {}, "action": "ADD2BASKET"};
			id = form.find(".pid").val();
			quantity = form.find(".qty_input").val();
			data["items"][id] = {new_quantity: quantity};
			$.ajax({
					url: "/ajax/basket.php",
					data: data,
					success: function(result) {
							console.log(result);
							$(".notification .success").html("Товар "+result.last_added+" успешно добавлен в <a href='/personal/cart/'>корзину покупок!</a><a href='#' class='close'></a>");
							$(".notification .success .close").click(function(event) {
									event.preventDefault();
									$(".notification .success").fadeTo("fast", 0).html("");
							});
							$("#cart-total").html(result.fullQuantity+" "+declination("товара", "товаров", "товар", result.fullQuantity)+" на "+result.allSumm+" р.");
							$(".notification .success").show().fadeTo("fast", 1);
							$.scrollTo("#header", 500);
					}
//        return false;
			})
		}
	});
});

Это последний вариант, с вызовом через .one. Результат тот же, функция отрабатывает 2 раза. Кроме того, на строчке 6 в консоль дважды вылетает одно и то же число. У меня закончились соображения по этому поводу, в гугле тоже ничего полезного не нашел.. Надеюсь на вашу помощь)
Вживую, например, тут: http://simtele.ru/catalog/iphone_5s/...2016Gb%20Gold/

Последний раз редактировалось Эллурн, 01.02.2014 в 15:28. Причина: UPD
Ответить с цитированием