Перейти к содержимому


Правильное Отображение Модификаций Внутри Карточки С Товаром

модификации карточка товара

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 43

#21 zabota-mama

zabota-mama

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 21 Февраль 2013 - 13:18

Vaccina, решение отличное, но при медленном интернете хорошо видно, что сначала грузится модификация с комментарием "нет в наличии", а потом меняется на ту которая в наличии.

В регионах при медленном интернете клиент может увидеть "нет в наличии" и закрыть окно до того момента когда страница окончательно загрузится и произойдет смена модификации.

Пример http://zabota-mama.r...-Спокойной-ночи

Нет ли другого решения?

Спасибо

#22 mikola

mikola

    Good soo good

  • Модератоpы
  • 1 550 сообщений
  • Городгород Нижний Новгород

Отправлено 21 Февраль 2013 - 21:18

Просмотр сообщенияzabota-mama (21 Февраль 2013 - 13:18) писал:

Vaccina, решение отличное, но при медленном интернете хорошо видно, что сначала грузится модификация с комментарием "нет в наличии", а потом меняется на ту которая в наличии.
В регионах при медленном интернете клиент может увидеть "нет в наличии" и закрыть окно до того момента когда страница окончательно загрузится и произойдет смена модификации.
То есть вы хотите сказать,что нужно оптимизировать процесс открытие вашего сайта...??
Просто ситуация с медленным интернетом., во многих городах России и с этим не чего не поделать (ждать улучшения качества сигнала)..
Пользователь зайдя на другой сайт думаете у него в интернет магазине не будет проблем???

#23 zabota-mama

zabota-mama

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 732 сообщений

Отправлено 24 Февраль 2013 - 17:24

Я имею ввиду что сначала грузится модификация с комментарием "нет в наличии", а потом с помощью этого кода меняется на ту которая в наличии.

При медленном интернете можно заметить как мелькает фраза "нет в наличии"

#24 Koderhan

Koderhan

    Активный участник

  • Модератоpы
  • 6 227 сообщений

Отправлено 25 Февраль 2013 - 10:43

Просмотр сообщенияzabota-mama (24 Февраль 2013 - 17:24) писал:

Я имею ввиду что сначала грузится модификация с комментарием "нет в наличии", а потом с помощью этого кода меняется на ту которая в наличии.

При медленном интернете можно заметить как мелькает фраза "нет в наличии"
К сожалению это исправить нельзя.

#25 mikola

mikola

    Good soo good

  • Модератоpы
  • 1 550 сообщений
  • Городгород Нижний Новгород

Отправлено 22 Апрель 2013 - 20:15

Просмотр сообщенияsorcessor (07 Февраль 2013 - 09:32) писал:

Товарищи, помогите хоть кто-нибудь, реально важный же вопрос. Очень нужно запустить эту функцию, ведь это напрямую влияет на коверсию, не все же готовы листать модификации...
добрый вечер скажите данная проблема решена?

#26 tanch

tanch

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 300 сообщений
  • ГородНовосибирск

Отправлено 27 Декабрь 2014 - 09:23

Вставила код
setTimeout(function() {
				$('.goodsDataMainModificationsList').each(function() {
				var rest_value = parseInt($(this).find('[name="rest_value"]').val());
				var id = $(this).attr('rel').split('_');
				var block = $('.goodsDataMainModificationsBlock');
				if(rest_value && !block.data('select')) {
				  block.data('select', true);
				  $('.goodsDataMainModificationsBlock select option').removeAttr('selected');
				  $('.goodsDataMainModificationsBlock select option[value="' + id[0] + '"]').attr('selected', 'selected');
				  $('.goodsDataMainModificationsBlock select option[value="' + id[1] + '"]').attr('selected', 'selected');
				  $('.goodsDataMainModificationsBlock select').trigger('change');
				}
  });
  }, 200);
У меня сейчас модификации изменены пример товара
там в наличии только стиль 13
код не работает

#27 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 30 Декабрь 2014 - 04:04

Просмотр сообщенияzabota-mama (21 Февраль 2013 - 13:18) писал:

Vaccina, решение отличное, но при медленном интернете хорошо видно, что сначала грузится модификация с комментарием "нет в наличии", а потом меняется на ту которая в наличии.

В регионах при медленном интернете клиент может увидеть "нет в наличии" и закрыть окно до того момента когда страница окончательно загрузится и произойдет смена модификации.

Пример http://zabota-mama.r...-Спокойной-ночи

Нет ли другого решения?

Спасибо
как вариант, уменьшить время загрузки скрипта, то есть
setTimeout(function() {
$('.goodsDataMainModificationsList').each(function() {
var rest_value = parseInt($(this).find('[name="rest_value"]').val());
var id = $(this).attr('rel').split('_');
var block = $('.goodsDataMainModificationsBlock');
if(rest_value && !block.data('select')) {
				 block.data('select', true);
$('.goodsDataMainModificationsBlock input').removeAttr('checked');
				 $('.goodsDataMainModificationsBlock input[value="' + id[0] + '"]').attr('checked', 'checked');
				 $('.goodsDataMainModificationsBlock input[value="' + id[1] + '"]').attr('checked', 'checked');
				 $('.goodsDataMainModificationsBlock input').trigger('change');
}
});
}, 200);
замените на:
setTimeout(function() {
$('.goodsDataMainModificationsList').each(function() {
var rest_value = parseInt($(this).find('[name="rest_value"]').val());
var id = $(this).attr('rel').split('_');
var block = $('.goodsDataMainModificationsBlock');
if(rest_value && !block.data('select')) {
				 block.data('select', true);
$('.goodsDataMainModificationsBlock input').removeAttr('checked');
				 $('.goodsDataMainModificationsBlock input[value="' + id[0] + '"]').attr('checked', 'checked');
				 $('.goodsDataMainModificationsBlock input[value="' + id[1] + '"]').attr('checked', 'checked');
				 $('.goodsDataMainModificationsBlock input').trigger('change');
}
});
}, 100);

другого способа нет, необходимо чтобы сначала загрузилась вся информация и уже потом срабатывал скрипт

Просмотр сообщенияtanch (27 Декабрь 2014 - 09:23) писал:

Вставила код
setTimeout(function() {
$('.goodsDataMainModificationsList').each(function() {
var rest_value = parseInt($(this).find('[name="rest_value"]').val());
var id = $(this).attr('rel').split('_');
var block = $('.goodsDataMainModificationsBlock');
if(rest_value && !block.data('select')) {
block.data('select', true);
$('.goodsDataMainModificationsBlock select option').removeAttr('selected');
$('.goodsDataMainModificationsBlock select option[value="' + id[0] + '"]').attr('selected', 'selected');
$('.goodsDataMainModificationsBlock select option[value="' + id[1] + '"]').attr('selected', 'selected');
$('.goodsDataMainModificationsBlock select').trigger('change');
}
});
}, 200);
У меня сейчас модификации изменены пример товара
там в наличии только стиль 13
код не работает

в вашем случае необходимо использовать следующий код:
setTimeout(function () {
  $('.goodsDataMainModificationsList').each(function () {
	var rest_value = parseInt($(this).find('[name="rest_value"]').val());
	var id = $(this).attr('rel').split('_');
	var block = $('.goodsDataMainModificationsBlock');
	if (rest_value && !block.hasClass('selected')) {
	  block.addClass('selected');
	  $('[name^="form[properties]"]').removeProp('checked');
	  $('[name^="form[properties]"][value="' + id[0] + '"]').prop('checked', true);
	  $('[name^="form[properties]"][value="' + id[1] + '"]').prop('checked', true);
	  $('[name^="form[properties]"]:checked').trigger('click');
	}
  });
}, 200);


#28 Ярослав 196

Ярослав 196

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 313 сообщений

Отправлено 12 Март 2015 - 10:35

Просмотр сообщенияVaccina (30 Декабрь 2014 - 04:04) писал:

Здравствуйте, вставил код. Появились проблемы:
1. Теперь карточка товара загружает модификацию, у которой наивысшая цена.
2.  Перестала показываться "Старая цена" (или так должно быть? Если у одной из модификаций стоит старая цена, то в карточке она не должна высвечиваться? Или что бы условие срабатывалось, нужно поставить старые цены на все модификации?)
http://almaz-gold-gloss.sinocar.ru/

#29 kirussian

kirussian

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 228 сообщений

Отправлено 25 Август 2017 - 23:13

Просмотр сообщенияVaccina (26 Январь 2013 - 03:06) писал:

Как вариант можно попробовать следующий код

данный код необходимо вставить в файл main.js после строки

$(document).ready(function(){

Данный код будет искать первую доступную модификацию, и устанавливать её в качестве выбранной.

Подскажите, куда именно нужно вставить код, если их несколько $(document).ready(function(){ в редакторе.

Пример товара http://mirwarrior.ru...oksa-rdx-ctf-u4

#30 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 26 Август 2017 - 03:25

Здравствуйте.

Можете вставить код в самый конец после:
$('#pers_confirm').change(function() {
if ($('#pers_confirm').attr("checked")){
$('#submit_order').attr('disabled', false);
} else {
$('#submit_order').attr('disabled', true);
}
});


#31 kirussian

kirussian

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 228 сообщений

Отправлено 26 Август 2017 - 15:50

Просмотр сообщенияVaccina (26 Август 2017 - 03:25) писал:

Здравствуйте.

Можете вставить код в самый конец после:
$('#pers_confirm').change(function() {
if ($('#pers_confirm').attr("checked")){
$('#submit_order').attr('disabled', false);
} else {
$('#submit_order').attr('disabled', true);
}
});

По большинству товаров начало работать, но по некоторым нет - пример http://mirwarrior.ru...oksa-rdx-ctf-u4

#32 MikDark

MikDark

    Активный участник

  • Модераторы
  • 6 468 сообщений

Отправлено 30 Август 2017 - 10:25

Просмотр сообщенияkirussian (26 Август 2017 - 15:50) писал:

По большинству товаров начало работать, но по некоторым нет - пример http://mirwarrior.ru...oksa-rdx-ctf-u4

По данной ссылке товар не открывается

#33 kirussian

kirussian

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 228 сообщений

Отправлено 30 Август 2017 - 11:00

Просмотр сообщенияMikDark (30 Август 2017 - 10:25) писал:

По данной ссылке товар не открывается

Сорри. Вот другой пример http://mirwarrior.ru...-kostym-rdx-cts
http://mirwarrior.ru...rchatki-RDX-BMR

#34 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 01 Сентябрь 2017 - 08:58

Здравствуйте.

Ссылки из последнего сообщения не работают. Укажите пожалуйста ссылку на товар, где товара изначально нет в наличии при первой загрузке страницы(проверить работу скрипта на ней).

#35 kirussian

kirussian

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 228 сообщений

Отправлено 01 Сентябрь 2017 - 10:33

Просмотр сообщенияVaccina (01 Сентябрь 2017 - 08:58) писал:

Здравствуйте.

Ссылки из последнего сообщения не работают. Укажите пожалуйста ссылку на товар, где товара изначально нет в наличии при первой загрузке страницы(проверить работу скрипта на ней).

Странно, давайте вот эту ссылку проверим - http://mirwarrior.ru...rdx-ctu<br /> или вот эту http://mirwarrior.ru...oksa-rdx-ctf-u4

#36 Ирина345

Ирина345

    Активный участник

  • Модераторы
  • 5 709 сообщений

Отправлено 01 Сентябрь 2017 - 14:40

Просмотр сообщенияkirussian (01 Сентябрь 2017 - 10:33) писал:

Странно, давайте вот эту ссылку проверим - http://mirwarrior.ru....rdx-ctu<br />или вот эту http://mirwarrior.ru...oksa-rdx-ctf-u4
Здравствуйте, у товара "Спортивная кофта RDX CTU", при открытие карточки товара происходит изменение модификации. Модификация, которой нет в наличие, меняется на модификацию, которая есть в наличие.
Что бы смена модификации работала корректно, найдите в файле main.js
	 setTimeout(function() {
		$('.goodsDataMainModificationsList').each(function() {
		var rest_value = parseInt($(this).find('[name="rest_value"]').val());
		var id = $(this).attr('rel').split('_');
		var block = $('.goodsDataMainModificationsBlock');
		if(rest_value && !block.data('select')) {
		  block.data('select', true);
		  console.log(block);
		  $('.goodsDataMainModificationsBlock select option').removeAttr('selected');
		  $('.goodsDataMainModificationsBlock select option[value="' + id[0] + '"]').attr('selected', 'selected');
		  $('.goodsDataMainModificationsBlock select option[value="' + id[1] + '"]').attr('selected', 'selected');
		  $('.goodsDataMainModificationsBlock select').trigger('change');
		}
  });
  }, 200);

и удалите, далее найдите в шаблоне Товар код
<!-- Краткое описание -->
	  <div class="short-description f-fix">
		<p itemprop="description">{GOODS_DESCRIPTION_SHORT}</p>
	  </div>

после вставьте
  {% IF GOODS_MOD_REST_VALUE=0 %}
	  <script>
			setTimeout(function() {
		$('.goodsDataMainModificationsList').each(function() {
		var rest_value = parseInt($(this).find('[name="rest_value"]').val());
		var id = $(this).attr('rel').split('_');
		var block = $('.goodsDataMainModificationsBlock');
		if(rest_value > 0) {
		  block.data('select', true);
		  console.log(block);
		  $('.goodsDataMainModificationsBlock select option').removeAttr('selected');
		  $('.goodsDataMainModificationsBlock select option[value="' + id[0] + '"]').attr('selected', 'selected');
		  $('.goodsDataMainModificationsBlock select option[value="' + id[1] + '"]').attr('selected', 'selected');
		  $('.goodsDataMainModificationsBlock select').trigger('change');
		}
  });
  }, 200);
	  </script>
	   {% ENDIF %}


#37 kirussian

kirussian

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 228 сообщений

Отправлено 04 Сентябрь 2017 - 08:37

Просмотр сообщенияИрина345 (01 Сентябрь 2017 - 14:40) писал:

Здравствуйте, у товара "Спортивная кофта RDX CTU", при открытие карточки товара происходит изменение модификации. Модификация, которой нет в наличие, меняется на модификацию, которая есть в наличие.
Что бы смена модификации работала корректно, найдите в файле main.js
setTimeout(function() {
$('.goodsDataMainModificationsList').each(function() {
var rest_value = parseInt($(this).find('[name="rest_value"]').val());
var id = $(this).attr('rel').split('_');
var block = $('.goodsDataMainModificationsBlock');
if(rest_value && !block.data('select')) {
block.data('select', true);
console.log(block);
$('.goodsDataMainModificationsBlock select option').removeAttr('selected');
$('.goodsDataMainModificationsBlock select option[value="' + id[0] + '"]').attr('selected', 'selected');
$('.goodsDataMainModificationsBlock select option[value="' + id[1] + '"]').attr('selected', 'selected');
$('.goodsDataMainModificationsBlock select').trigger('change');
}
});
}, 200);

и удалите, далее найдите в шаблоне Товар код
<!-- Краткое описание -->
	 <div class="short-description f-fix">
	 <p itemprop="description">{GOODS_DESCRIPTION_SHORT}</p>
	 </div>

после вставьте
{% IF GOODS_MOD_REST_VALUE=0 %}
	 <script>
		 setTimeout(function() {
	 $('.goodsDataMainModificationsList').each(function() {
	 var rest_value = parseInt($(this).find('[name="rest_value"]').val());
	 var id = $(this).attr('rel').split('_');
	 var block = $('.goodsDataMainModificationsBlock');
	 if(rest_value > 0) {
		 block.data('select', true);
		 console.log(block);
		 $('.goodsDataMainModificationsBlock select option').removeAttr('selected');
		 $('.goodsDataMainModificationsBlock select option[value="' + id[0] + '"]').attr('selected', 'selected');
		 $('.goodsDataMainModificationsBlock select option[value="' + id[1] + '"]').attr('selected', 'selected');
		 $('.goodsDataMainModificationsBlock select').trigger('change');
	 }
});
}, 200);
	 </script>
	 {% ENDIF %}

Вроде все ок, спасибо.

#38 spectredes

spectredes

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 97 сообщений

Отправлено 15 Ноябрь 2017 - 22:47

Здравствуйте ! Помогите и мне с этим пожалуйста ! Вставил код и не работает -шаблон лето . Заранее спасибо !

Здравствуйте ! Помогите и мне с этим пожалуйста ! Вставил код и не работает -шаблон лето . Заранее спасибо !

Здравствуйте ! Помогите и мне с этим пожалуйста ! Вставил код и не работает -шаблон лето . Заранее спасибо !

Здравствуйте ! Помогите и мне с этим пожалуйста ! Вставил код и не работает -шаблон лето . Заранее спасибо !

#39 spectredes

spectredes

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 97 сообщений

Отправлено 15 Ноябрь 2017 - 23:00

Установил данный код в "товар" как предложено в последнем варианте , модификация перекидывается на ту которая положительная , но наличие товара так и остаётся : "не в наличии"

#40 Stasya

Stasya

    Активный участник

  • Модератоpы
  • 4 007 сообщений

Отправлено 20 Ноябрь 2017 - 14:08

Просмотр сообщенияspectredes (15 Ноябрь 2017 - 23:00) писал:

Установил данный код в "товар" как предложено в последнем варианте , модификация перекидывается на ту которая положительная , но наличие товара так и остаётся : "не в наличии"
Здравствуйте. Простите за длительное ожидание ответа. Не могли бы Вы прислать пример такого товара?




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных