$('.reviews__text').each(function() {
if ($(this).text().length > 391) {
$(this).parent('.reviews__wrapper').data('height', $(this).parent('.reviews__wrapper').height());
$(this).data('full', $(this).text());
$(this).text($(this).text().slice(0, 391) + '...');
$(this).parent('.reviews__wrapper').css('height', '303px');
$(this).after("<span class='reviews__more'>Развернуть</span>");
}
});
$('.reviews__more').click(function() {
var trigger = $(this); // Кнопка свернуть/развернуть
var feedback_text = trigger.siblings('.reviews__text').data('full'); //Текст отзыва
var feedback_container = trigger.siblings('.reviews__text'); //Контейнер текста
var feedback_container_wrapper = trigger.parent('.reviews__wrapper'); //Обёртка для контейнера
if (trigger.text() == 'Развернуть') {
feedback_container_wrapper.animate({height: feedback_container_wrapper.data('height') + 23 }, 400);
feedback_container.text(feedback_text);
trigger.text('Свернуть');
} else {
feedback_container_wrapper.animate({height: '303px'}, 400);
feedback_container.text( feedback_text.slice(0, 391) + '...' );
trigger.text('Развернуть');
}
});
$('.reviews__text').each(function() {
if ($(this).text().length > 391) {
$(this).data('full', $(this).text() );
$(this).html($(this).text().slice(0, 391) + '... <span class="volt">'+$(this).text().slice(391, 99999)+'</span>' );
$(".volt").hide()
$(this).after("<span class='reviews__more'>Развернуть</span>");
}
});
$('.reviews__more').click(function() {
if ($(this).text() == 'Развернуть') {
$(this).siblings('.reviews__text').find('.volt').slideDown();
$(this).text('Свернуть');
} else {
$(this).siblings('.reviews__text').find('.volt').slideUp();
$(this).text('Развернуть');
}
});
$('.reviews__text').each(function() {
if ($(this).height() > 288) {
$(this).data('height', $(this).height());
$(this).css('height', '288px');
$(this).after("<span class='reviews__more'>Развернуть</span>");
}
if ($(this).text().length > 424) {
$(this).data('full', $(this).text());
$(this).text( $(this).text().slice(0, 424) + '...' );
}
});
$('.reviews__more').click(function() {
if( $(this).text() == 'Развернуть' ) {
$(this).siblings('.reviews__text').animate({height: $(this).siblings('.reviews__text').data('height') }, 424);
$(this).siblings('.reviews__text').text( $(this).siblings('.reviews__text').data('full') );
$(this).text('Свернуть');
} else {
$(this).siblings('.reviews__text').animate({height: '288px'}, 200);
$(this).siblings('.reviews__text').text( $(this).siblings('.reviews__text').text().slice(0, 424) + '...' );
$(this).text('Развернуть');
}
});
$('.reviews__text').each(function() {
if ($(this).height() > 288) {
$(this).data('height', $(this).height());
$(this).css('maxHeight', '288px');
$(this).after("<span class='reviews__more'>Развернуть</span>");
}
});
$('.reviews__more').click(function() {
if( $(this).text() == 'Развернуть' ) {
$(this).siblings('.reviews__text').animate({maxHeight: $(this).siblings('.reviews__text').data('height') }, 400);
$(this).text('Свернуть');
} else {
$(this).siblings('.reviews__text').animate({maxHeight: '288px'}, 400);
$(this).text('Развернуть');
}
});
Если он встретит в потоке первым запрос media (max-width: 575px), а потом только media (max-width: 1199px), то будет следующая картина:
Что естественно повлияет на работоспособность.
Однако есть решение. У самого плагина есть опция "sort" https://github.com/hail2u/node-css-mqpacker#sort,
но она поддерживает только запросы с min-width, а max-width обрабатывает по старому.
После поисков альтернативы css-mqpacker'у случайно наткнулся на
https://github.com/dutchenkoOleg/sort-css-media-qu...
Собственно с помощью этого метода сортировки всё становится на свои места. Плюс автор русскоговорящий поэтому есть туториал на русском языке.
В итоге: