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


Оформление Заказа - Доставка


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

#1 yamamoto

yamamoto

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

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

Отправлено 04 Апрель 2014 - 01:18

Здравствуйте!
Сейчас при оформлении заказа нужный способ доставки выбирается нажатием на круглый переключатель или название доставки (подчеркнуто красным на рисунке). Как сделать, чтобы выбор осуществлялся путем нажатия на любую часть области, которая относится к данному виду доставки (обведено зеленым)?
Аккаунт SL-151311

Прикрепленные изображения

  • оформление заказа.jpg


#2 Сake

Сake

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

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

Отправлено 04 Апрель 2014 - 01:55

Для этого будет достаточно в файл main.js добавить следующий код

$(function() {
	$('.orderStageDeliveryListTable td:not(.cell1)').click(function() {
	   $(this).closest('tbody').find('td.cell1 .deliveryRadio').trigger('click');
	});
});


#3 yamamoto

yamamoto

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

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

Отправлено 04 Апрель 2014 - 11:10

Просмотр сообщенияСake (04 Апрель 2014 - 01:55) писал:

Для этого будет достаточно в файл main.js добавить следующий код

$(function() {
$('.orderStageDeliveryListTable td:not(.cell1)').click(function() {
	 $(this).closest('tbody').find('td.cell1 .deliveryRadio').trigger('click');
});
});

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

#4 Сake

Сake

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

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

Отправлено 05 Апрель 2014 - 00:35

У вас не кликабельны выпадающие списки? В каком браузере наблюдается подобная проблема? Можно попробовать код заменить на

$(function() {
		$('.orderStageDeliveryListTable td:not(.cell1, .cell5)').click(function() {
		   $(this).closest('tbody').find('td.cell1 .deliveryRadio').trigger('click');
		});
});

добавив тем самым в исключение область выпадающего списка.

#5 yamamoto

yamamoto

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

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

Отправлено 07 Апрель 2014 - 05:02

Просмотр сообщенияСake (05 Апрель 2014 - 00:35) писал:

У вас не кликабельны выпадающие списки? В каком браузере наблюдается подобная проблема? Можно попробовать код заменить на

$(function() {
	 $('.orderStageDeliveryListTable td:not(.cell1, .cell5)').click(function() {
		 $(this).closest('tbody').find('td.cell1 .deliveryRadio').trigger('click');
	 });
});

добавив тем самым в исключение область выпадающего списка.

вопрос остается: выпадающие списки по-прежнему не кликабельны. браузеры: яндекс и firefox

#6 Сake

Сake

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

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

Отправлено 08 Апрель 2014 - 00:37

К сожалению, повторить проблему не удается. В браузере firefox код работает исправно. Выпадающий список может быть активирован только когда рядом установлена радио кнопка. Попробуйте дополнительно очистить кеш в вашем браузере. Судя по вашему сайту, код у вас установлен, списки активируются по описания, а так же доступны для выбора.

#7 yamamoto

yamamoto

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

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

Отправлено 11 Апрель 2014 - 12:19

Видимо не правильно сформулировал вопрос. Нужно, наоборот, чтобы выпадающий список активировался при нажатии на него, а вместе с ним - и радиокнопка, т.е. чтобы радио кнопка активировалась при нажатии на любую часть, относящуюся к данной доставке (включая выпадающий список).

#8 Сake

Сake

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

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

Отправлено 12 Апрель 2014 - 00:57

К сожалению, такое реализовать не получиться, так как событие с заблокированным элементом на странице работать не будет. Возможно лучше будет скрыть заблокированные выпадающие списки и отображать их уже при активации пункта доставки. Для этого достаточно в файл стилей main.css добавить класс

.deliveryZoneRadio:disabled {
  display: none;
}





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

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