Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

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


Recommended Posts

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

Версия Opencart 3.0

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

Link to comment
Share on other sites


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

как вариант

 

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

Link to comment
Share on other sites


3 часа назад, anboza сказал:

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

 

 

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

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

 

Link to comment
Share on other sites


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

height: 150px;

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

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

 

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

Link to comment
Share on other sites

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

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

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

 

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

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

Link to comment
Share on other sites


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

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

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

Link to comment
Share on other sites

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

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

Все понятно, но ответ был на конкретный вопрос, а не о сложности отдачи контента, при адаптивности, кроссбраузерности и т. д. 

У вас это есть, хорошо, но на рассмотрение тс

Link to comment
Share on other sites


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

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

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

Link to comment
Share on other sites

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

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

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

 

Link to comment
Share on other sites

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

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

 

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

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

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

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

Link to comment
Share on other sites

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

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

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

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

 

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

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

 

Link to comment
Share on other sites

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

 

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

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

 

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

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.