Показать сообщение отдельно
  #7 (permalink)  
Старый 02.12.2013, 12:18
Аватар для Sveta
Профессор
Отправить личное сообщение для Sveta Посмотреть профиль Найти все сообщения от Sveta
 
Регистрация: 10.10.2012
Сообщений: 153

Дело обстоит так: если я буду использовать изменение значения куков при событии slide то мне придется отдельно прописывать изменение куков в каждой функции где значение слайдера меняется программно. Здесь проблема: таких функций несколько, скрипт с ними находится в другом файле... возможно это и будет работать если довести до ума...но у меня не работало, значения портились в null...в общем, я решила что более простым и удобным решением будет использование change
как я поняла, понять какой их двух ползунков вызвал change нельзя( поэтому мне пришлось завсети переменную-флаг, которая запрещает изменение значения куков в случае если изменение положение слайдера вызвано при перезагрузке страницы...вообще говоря это правильно, хотя решение на мой взгляд не красивое(((
var flagChangeData1="1"; // флаг, указывающий, менять ли значение в coockie при вызове chahge
	if(document.getElementById('slider-range_his')!=null){
			$("#slider-range_his").slider({
			  range: true,
			  min: 1981,
			  max: maxYear,
			  values: [maxYear, maxYear],
			  slide: function( event, ui ) {
				$( "#startYear_his" ).val( ui.values[ 0 ] );
				$( "#endYear_his" ).val(  ui.values[ 1 ] );
			  },
			  change: function( event,ui){
				if(flagChangeData1=="1"){
					$.cookie("his_year_start_Cookie", ui.values[ 0 ]);
					$.cookie("his_year_end_Cookie", ui.values[ 1 ]);
				}
				flagChangeData1="1";
			  }
			});
			$( "#startYear_his" ).val( $( "#slider-range_his" ).slider( "values", 0 ) );	
			$( "#endYear_his" ).val(  $( "#slider-range_his" ).slider( "values", 1 ) );	

			//*******************start year**************************
			//$.cookie('his_year_start_Cookie', 'cookie_value');
			var his_year_start_Cookie = $.cookie("his_year_start_Cookie");
			if(his_year_start_Cookie  == null  )
			{
			 var cookie_value = $( "#slider-range_his" ).slider( "values", 0 );
			  $.cookie("his_year_start_Cookie", cookie_value);
			  his_year_start_Cookie = $.cookie("his_year_start_Cookie");
			}
			else{
				flagChangeData1="0";
			  $( "#slider-range_his" ).slider( "values", 0,$.cookie("his_year_start_Cookie"));
			  $( "#startYear_his" ).val( $( "#slider-range_his" ).slider( "values", 0 ) );
			  }
			  
			  //********************end year*******************
			 var his_year_end_Cookie = $.cookie("his_year_end_Cookie");

			if(his_year_end_Cookie  == null)
			{
			 var cookie_value1 = $( "#slider-range_his" ).slider( "values", 1 );
			  $.cookie("his_year_end_Cookie", cookie_value1);
			  his_year_end_Cookie = $.cookie("his_year_end_Cookie");
			}
			else{
				flagChangeData1="0";
			  $( "#slider-range_his" ).slider( "values", 1,$.cookie("his_year_end_Cookie"));
			  if($.cookie("his_year_end_Cookie")==maxYear && $.cookie("his_year_start_Cookie")==maxYear )$( "#slider-range_his" ).slider( "values", 0,$.cookie("his_year_start_Cookie"));
			  $( "#endYear_his" ).val( $( "#slider-range_his" ).slider( "values", 1 ) );
			  }
	  
	}
Ответить с цитированием