Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Нужна доработка модуля поиска AJAX


Recommended Posts

Доброго дня! Нужна доработка модуля Интеллектуальный живой AJAX поиск товаров для Opencart. А именно - чтобы в выпадающем окне поиска справа был скролл, чтобы можно было прокруткой посмотреть все товары. http://prntscr.com/q03wib

Версия Opencart 3.0

Возможно ли? сколько будет стоить такая доработка?

Надіслати
Поділитися на інших сайтах


24 минуты назад, AlexDW сказал:

как вариант

 

 Только что-то я там в демо админки не увидела, где включать/отключать эту прокрутку. И в самой демке не вижу, чтобы она была...

Надіслати
Поділитися на інших сайтах


она автоматически появляется когда результаты поиска превышают максимальную длину списка

введите on на демо для наглядности

Надіслати
Поділитися на інших сайтах

2 часа назад, anastasia2222 сказал:

И в самой демке не вижу, чтобы она была...

в этом модуле, прокрутка есть и появляется автоматически, подтверждаю.

 

Надіслати
Поділитися на інших сайтах

12 часов назад, Designer сказал:

height: 150px;

зачем ограничивать высоту блока строго в 150 пикс? экраны же у всех разные.. 

Мой модуль тоже поддерживает скролл:

 

демо тутhttp://demo.sv2109.com/ocstore2302/index.php?route=product/search&search=a

Надіслати
Поділитися на інших сайтах

38 минут назад, Designer сказал:

Потому что, это пример, если сложно догадаться.. 

я не о том, понятно, что 150 пикс в вашем ответе это пример. Я о том, что любое фиксированное число, какое бы оно не было навряд ли подойдет. Я тоже когда задался вопросом добавить скрол к своему модулю то сразу подумал: "А, ерунда, 2 строчки css кода и все", а потом начав это реализовывать понял, что 2-мя строчками кода тут никак не обойтись. Ведь нужно чтобы этот блок подстраивался под размер экрана, а это уже через css не сделать + нужно также реагировать на изменение размера экрана, ведь пользователь может например перевернуть планшет из вертикального положения в горизонтальное + идеально также учитывать позицию скрола страницы итд. 

Надіслати
Поділитися на інших сайтах

15 часов назад, sv2109 сказал:

я не о том, понятно, что 150 пикс в вашем ответе это пример. Я о том, что любое фиксированное число, какое бы оно не было навряд ли подойдет. Я тоже когда задался вопросом добавить скрол к своему модулю то сразу подумал: "А, ерунда, 2 строчки css кода и все", а потом начав это реализовывать понял, что 2-мя строчками кода тут никак не обойтись. Ведь нужно чтобы этот блок подстраивался под размер экрана, а это уже через css не сделать + нужно также реагировать на изменение размера экрана, ведь пользователь может например перевернуть планшет из вертикального положения в горизонтальное + идеально также учитывать позицию скрола страницы итд. 

А например height: 70vh чем плох? Подстроится под высоту экрана

Надіслати
Поділитися на інших сайтах

2 часа назад, Blast сказал:

А например height: 70vh чем плох? Подстроится под высоту экрана

как вариант, я просто не дазайнер и напрочь забыл о нем. 
плохо то, что нам по сути не нужна высота экрана, а нужно расстояние от элемента поиска до низа экрана. А поле поиска оно находится в шапке, которая бывает разной, если экран большой, то она может занимать 5% экрана, а если это какой-то смартфон с маленьким экранчиком то и возможно и все 70%.. 
яваскриптом же можно намного точнее определить, у меня правда не получилось это сделать, не хотелось тратить много времени на какое-то идеальное решение, пробовал разные .offset() и даже .getBoundingClientRect() но они мне возвращали положение элемента относительно не экрана, а родительского элемента, наверное это связано с позиционированием элемента.. То есть по идее чтобы получить точную позицию нужно просуммировать позиции всех родителей элемента, после чего ее нужно отнять от высоты окна, отминусовать позицию скрола  и мы получим с точностью до пиксела высоту от элемента поиска до низа окна :)

 

Надіслати
Поділитися на інших сайтах

5 часов назад, sv2109 сказал:

как вариант, я просто не дазайнер и напрочь забыл о нем. 
плохо то, что нам по сути не нужна высота экрана, а нужно расстояние от элемента поиска до низа экрана. А поле поиска оно находится в шапке, которая бывает разной, если экран большой, то она может занимать 5% экрана, а если это какой-то смартфон с маленьким экранчиком то и возможно и все 70%.. 
яваскриптом же можно намного точнее определить, у меня правда не получилось это сделать, не хотелось тратить много времени на какое-то идеальное решение, пробовал разные .offset() и даже .getBoundingClientRect() но они мне возвращали положение элемента относительно не экрана, а родительского элемента, наверное это связано с позиционированием элемента.. То есть по идее чтобы получить точную позицию нужно просуммировать позиции всех родителей элемента, после чего ее нужно отнять от высоты окна, отминусовать позицию скрола  и мы получим с точностью до пиксела высоту от элемента поиска до низа окна :)

 

ну вроде расстояние от верха экрана до элемента поиска можно вычислить так:

$('#search').offset().top - $(window).scrollTop()

От верха поиска до низа экрана

$(window).height() - ($('#search').offset().top - $(window).scrollTop())

Надіслати
Поділитися на інших сайтах

47 минут назад, Blast сказал:

ну вроде расстояние от верха экрана до элемента поиска можно вычислить так:

$('#search').offset().top - $(window).scrollTop()

я тоже так думал и пробовал, но у меня не работало

 

6 часов назад, sv2109 сказал:

пробовал разные .offset() и даже .getBoundingClientRect() но они мне возвращали положение элемента относительно не экрана, а родительского элемента, наверное это связано с позиционированием элемента

 

Надіслати
Поділитися на інших сайтах

В 21.11.2019 в 23:48, Designer сказал:

 

в своем модуле достаточно добавить CSS разметку блока результата


height: 150px; // Ограничить высоту просмотра
overflow-x: hidden;
overflow-y: auto; // Добавить появления скролла, при привышении уставноленной высоты по оси Y

 

это просто находка, если все так просто! Скажите, а куда именно нужно это добавить? в контроллер или в шаблон? и в какой блок вставить?

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.