@Arinko

Кнопка «Показать еще» через Ajax или display: none?

Вопрос чисто теоретический. Есть превью галереи, на десктопе они выводятся полностью, их штук 8-10. На мобильных хотелось бы выводить всего 3-4 превьюшки, а остальные подгружать по желанию пользователя через кнопку "Показать еще". Правильное ли это решение? И как лучше реализовать скрытие остальных блоков: скрыть их display: none и управлять видимостью при клике на кнопку или отобразить на странице первые 3-4, а остальные подгружать аяксом? И вообще, в каких случаях предпочтительней управление видимостью уже существующей разметки, а когда ее подгрузка?
  • Вопрос задан
  • 5866 просмотров
Решения вопроса 1
@eLig
Если бы делал я, то решение зависело бы от веса картинок. Если не существенно, то display:none, если жирно, то тогда лучше ajax.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Isolution666
@Isolution666
Full-Stack Developer
Можно так:
<script>
$( 'button' ).click(function() {
  if ( $( "#box" ).is( ":hidden" ) ) {
    $( "#box" ).show( "slow" );
  } else {
    $( "#box" ).slideUp();
  }
});
</script>


<button>показать ещё</button>
<div id="box">тут картинки</div>


Если картинки тяжёлые, по мегабайту каждая или более, лучше через:
else ...
$( "#box" ).load( "ajax/image.html  #target" );
...

<div id="box">
      <div id="target"></div>
</div>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы