Кнопка показать еще php
Кнопка «Показать еще» на ajax. Подгрузка контента
Введение
В этой статье будет рассмотрена возможность реализации, наверняка, всем известного функционала — ajax подгрузка данных с сервера. Работу такого функционала хорошо демонстрирует кнопка «Показать еще», которая без перезагрузки страницы получает данные с сервера и отображает их на странице. Для примера можно выводить, например, новости. Как раз дамп тестовой таблицы новостей у меня есть в статье Пагинатор. Постраничный вывод данных на php.
Кнопка «Показать еще» на ajax. Код
Начнем, с того что подготовим базу данных, создадим таблицу с новостями и заполним ее тестовыми данными, можете воспользоваться sql дампом:
Также стоит создать файл, в котором будет реализовано подключение к базе данных, назовем его db.php:
Теперь необходимо написать серверный скрипт, к которому мы будем обращаться через ajax, и назовем его ajax.php:
Ну и самое последнее — это js код и верстка.
На этом все. Скачать исходники можно — тут.
Кнопка «Показать еще» на ajax. Подгрузка контента: 7 комментариев
Как Вы решили вопрос с комментариями и подгрузкой комментариев к комментариям=)
Отличная статья, все ясно и понятно.
Доброе время суток, у меня такой вопрос, хотелось бы к новостям добавить картинки. То есть чтоб в ленте показывалась одна картинка, а при открытии новости еще несколько картинок. Не подскажите как это реализовать. За ранее благодарю.
Спасибо за отличную статью.
Подскажите пожалуйста, реализовал каталог, выводятся товары по категориям, а кнопка «показать еще», соответственно перестала работать.
Понимаю что нужно передать в обработчик параметр выбранной категории, но не могу понять, где его нужно подставить, подскажите пожалуйста? Благодарю!
$.ajax( <
url: «ajax.php», // куда отправляем
type: «post», // метод передачи
dataType: «json», // тип передачи данных
data: < // что отправляем
«count_show»: count_show,
«count_add»: count_add,
«id_catalog»: id_catalog // параметр категории
>,
// далее как в исходнике
…….
Кнопка «показать ещё»
Есть 100 элементов с блоками.
Необходимо показать на странице первые 10 блоков.
При повторном клике на кнопку, показывать следующие 10 блоков.
5 ответов 5
Всем блокам дать класс-невидимку, при каждом клике собрать все элементы с этим классом и с первых N элементов убрать невидимку, дать другой класс со стилями:
Codepen я смотрел.
Вот только попытки Ваши закончились на box.slice(0,9)
Это потом Вы хоть что-то добавили.
Так как Grundy сделал мне выговор, который мы ещё обсудим, решил добавить ответ.
Вот красивое решение. В скрипте можно указать, какое количество элементов выводить. Когда все элементы уже показаны, то кнопка скрывается. Примеры:
Решение на JavaScript(jQuery). 100 элементов
Другое количество элементов (не кратное десяти)
Решение на нативном JavaScript
Кого интересует более проработанная версия, в адаптивных блоках в ряд 3 блока, плюс кнопка показать еще блоки с фото, показываем 6 блоков, но если надо подгрузить еще 6, нажимаем кнопку показать еще, если все фото загружены, кнопка исчезает. Код подгрузить еще блоки, позаимствовал у автора выше.
Для фото до и после, используется скрипт twentytwenty.
Таким способом можно показывать работы, до и после, ну и для другого применить.
Всё ещё ищете ответ? Посмотрите другие вопросы с метками javascript или задайте свой вопрос.
Связанные
Похожие
Подписаться на ленту
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.9.17.40238
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Кнопка «Показать еще» на HTML и CSS
Безусловно, что показ контента вашего на сайте очень важен, но однако на веб-странице так много контента и очень мало места. И прежде чем гость или пользователь перестанет прокручивать страницу, и не найдет, то что ему нужно. И для этого был создан элемент функций для посетителей веб-сайта, где можно внедрить этот метод методы для отображения контента наиболее интуитивно понятным способом.
Теперь эту функцию, назовем ее «Загрузить больше» может быть реализован с помощью CSS, где не нужно применять JavaScript, JQuery или библиотеки. Также вы можете расположить изначально скрытым любой функционал или материал, но так, что изначально будет понятно, что при клике далее будет находиться. Но думаю вы поняли смысл этого материала, который самостоятельно можете создать.
Изначально при открытие сайта так наблюдаем:
При клике с дальнейшим просмотром открывается остальная информация:
ul li:nth-child(1n + 5) <
max-height: 999px;
opacity: 1;
transition: 0.2s ease-in;
>
.zagruska-proizvod-container #zagruska-proizvod:checked
Но, где при всем этом, предоставляя, объем контента, который может потребоваться посетителям, а просто нажать кнопку, где откроется остальном материал или изображение, что по умолчанию он был скрыт, и только вверх можно было рассмотреть.
Это функция довольно актуальна, которую вы должны использовать на своем сайте, или для тех веб разработчиков, где считают, что на сайте мало место, и здесь будет отличным решение применить это метод.
Открытие и закрытие контента на jQuery
Кнопки «показать полностью» и «показать еще» для открытия и закрытия дополнительного контента
По своей сути «показать полностью» и «показать еще» это одно и тоже, но для каждого варианта в этой заметке используются разные решения.
В интернете масса различных примеров, как показать и скрыть контент, нажав на кнопку, но все они, как правило, реализованы для одного конкретного блока. В данной теме оба примера можно применять к неограниченному их числу.
Скрипты используемые в этих примерах сделаны для библиотеки jQuery
Кнопка «показать еще»
В этом примере часть контента с классом hide-content скрывается и показывается нажатием на кнопку или любой другой элемент с классом show-more
Каждая кнопка и скрытый текст должны находиться в контейнере content-block
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
CSS в этом примере не выкладываю, т.к. оформление тут индивидуальное, но если кому нравится эта кнопка, ее код представлен ниже.
Реализация кнопки «Показать еще» в 1С Битрикс
Некоторые заказчики хотят чтобы в разделе новостей или статей вместо привычной пагинации со списком страниц была кнопка «Показать еще». При нажатии на эту кнопку в дополнение к уже загруженному списку новостей, загружались дополнительные. Как бы снизу добавлялась еще одна страница новостей.
Преимущество такого варианта загрузки новостей перед обычной пагинацией я не вижу, наоборот при большом количестве новостей такой вариант не удобен. Но если заказчик просит, реализуем.
Ниже показано как это реализовать для вывода новостей в cms Битрикс.
Эту кнопку мы будем отображать в шаблоне компонента пагинации.
Не забудем указать наш шаблон в настройках вывода компонента новостей в разделе «Настройки постраничной навигации».
Поменяем код файла шаблона template.php на наш:
Здесь мы проверяем условие, показа нашей кнопки. Если есть еще элементы для показа, то отображаем кнопку «Показать еще», если элементов нет, то и кнопку отображать не надо.
Дальше добавим Ява-скрипт для того, чтобы заработала наша подгрузка элементов:
Я сохранил этот код в файл more.js, положил его в папку JS моего шаблона. Далее необходимо подключить файл more.js к нашим страницам, сделаем это в footer.php текущего шаблона.
Не забывайте, что этот файл нужно обязательно подключить после jQuery иначе не заработает.
Теперь осталось подредактировать шаблон списка новостей.
Например, в моем случае, шаблон списка новостей располагается в комплексном компоненте новости в файле: \local\templates\.default\components\bitrix\news\news\bitrix\news.list\.default\template.php
Для теста я сделал самый простой шаблон. Он выглядит так:
И не забудьте внизу подключить вывод навигации:
Все должно заработать.
Если не работает, проверьте подключен ли jQuery, все ли верно в настройках вывода компонента Новости.