Задать вопрос

Как JS из сокращённого вида переписать (8 строк)?

Ребята, помогите в нормальном виде переписать. Меня || с толку сбивают.

var $this = $(this), href
	  , target_id = $this.attr('data-id')
	  , target = $this.attr('data-target')
		|| e.preventDefault()
		|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')
	  , option = $(target).data('collapse') ? 'toggle' : $this.data()
	$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
	$(target).collapse(option);


так?
var $this = $(this);
var href;
var target_id = $this.attr('data-id');
var target = $this.attr('data-target') || e.preventDefault() || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '');
var option = $(target).data('collapse') ? 'toggle' : $this.data();
var $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed');
var $(target).collapse(option);
  • Вопрос задан
  • 2802 просмотра
Подписаться 5 Оценить Комментировать
Ответ пользователя Александр Вульф К ответам на вопрос (3)
mannaro
@mannaro Куратор тега JavaScript
Умею профессионально гуглить
Так
var $this = $(this);
var href;
var target_id = $this.attr('data-id');
var target = $this.attr('data-target') || e.preventDefault() || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '');
var option = $(target).data('collapse') ? 'toggle' : $this.data();
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed');
$(target).collapse(option);
Ответ написан
Комментировать