Снова вернуть обработчик, on(), off() 
		
		
		
		Привет! 
	Не могу сообразить, как придумать краткое решение проблемы. Суть: есть элемент, на него повешен обработчик, который должен работать с самого начала. По клику на .n1 должно произойти единожды событие mouseenter, и обработчик надо снять. Обработчик возвращается вновь, по клику на .n2. Грубая модель ситуации: Есть переключатель, который включает или выключает анимацию на сайте. Если анимация отключается, то все занимает "отработанное" положение. Если тут же ее включают, все возвращается к исходным положениям. Думал над решениями, но какие-то длинные, хочу лаконично. Фрагмент кода 
$(".cblocks").on({
	mouseenter:
		function() {
		// код...
	},
	mouseleave: 
		function () {
		//еще код...
	}
});
$(".n1").click(function() {
	$(".cblocks").trigger("mouseenter");
	$(".cblocks").off();
});
	
$(".n2").click(function() {
	$(".cblocks").trigger("mouseleave");
	//как вернуть ? :(
});
С событиями работаю первый раз, поэтому возникают трудности. Спасибо (:  | 
	
		
 Цитата: 
	
  | 
	
		
 Цитата: 
	
 Я может запутал словом "единожды". Имел ввиду что при клике на .n1 (отключение анимации) элементы выполнять действия как в mouseenter, и застынут. И не будут обрабатывать ни маусэнтер ни мауслив. Но как только клик на .n2 (включение анимации) - все работает снова.  | 
	
		
 Deliaz, 
	Тады on и unbind http://jquery-docs.ru/Events/unbind/#typefn (Для старых версий ниже 1.7.2 был еще и bind - установщик в новой всё ставицо через on  | 
	
		
 Цитата: 
	
 
$(".cblocks").on({mouseenter:ShowIt,mouseleave:HideIt});
	$(".n1").click(function() {
		$(".cblocks").trigger("mouseenter");
		$(".cblocks").off();
	});
	
	$(".n2").click(function() {
		$(".cblocks").on({mouseenter:ShowIt,mouseleave:HideIt});
		$(".cblocks").trigger("mouseleave");
	});
Функции ессно описаны. Это действительно оптимальный код? А то концентрация индусских решений у меня уже превышена, стоит бы оптимизировать..  | 
| Часовой пояс GMT +3, время: 16:54. |