Jump to content
Sign in to follow this  
Bersi

Нужна помощь в JavaScript (модуль Cloud Zoom Free)

Recommended Posts

Переделываю под себя модуль Cloud Zoom Free (oc 1.5.3). Немного поменял стиль вывода и добавил пару условий на вывод картинки, меньше заданного в параметрах зума. Кроме того, картинки у меня не квадратные, а масштабируются исходя из пропорций исходного изображения.

Заметил глюк: в некоторых случаях (от чего зависит, так и не понял) скрипт не может определить background-position для линзы. Как это происходит, можно посмотреть по ссылке (третья картинка в списке) и на скриншотах (прилагаются).

Не правильно:

Изображение

Правильно:

Изображение

Вроде бы нашел код в скрипте, который за это отвечает (cloud-zoom.1.0.2.js, строки 131-135):

				lens.css({
					left: x,
					top: y
				});
				lens.css('background-position', (-x) + 'px ' + (-y) + 'px');
При этом значения left и top определяются прекрасно, проблема именно с background-position.

Очень прошу помощи профессионалов.

Во вложении модифицированный модуль.

ЗЫ: я не программер, потому прошу строго не судить, если что-то объяснил коряво :)

cloud-zoom-magnifier-simple 1531-mod.zip

Share this post


Link to post
Share on other sites

Разобрался сам.

Округлил значения до целых, поменяв

				var x = (mx - sImg.offset().left - (cw * 0.5)) >> 0;
				var y = (my - sImg.offset().top - (ch * 0.5)) >> 0;
			  
				if (x < 0) {
					x = 0;
				}
				else if (x > (sImg.outerWidth() - cw)) {
					x = (sImg.outerWidth() - cw);
				}
				if (y < 0) {
					y = 0;
				}
				else if (y > (sImg.outerHeight() - ch)) {
					y = (sImg.outerHeight() - ch);
				}
на:

				var x = Math.round(mx - sImg.offset().left - (cw * 0.5)) >> 0;
				var y = Math.round(my - sImg.offset().top - (ch * 0.5)) >> 0;
			  
				if (x < 0) {
					x = 0;
				}
				else if (x > (sImg.outerWidth() - cw)) {
					x = Math.round(sImg.outerWidth() - cw);
				}
				if (y < 0) {
					y = 0;
				}
				else if (y > (sImg.outerHeight() - ch)) {
					y = Math.round(sImg.outerHeight() - ch);
				}
Тему можно удалять :)

Share this post


Link to post
Share on other sites

Молодец!

Зачем же удалять, если нашел решение, да еще и описал его, еще может пригодиться кому либо! :wink:

Share this post


Link to post
Share on other sites

Скачал файл что то не работает, там нужно все менять как выше описано? (есть готовый рабочий?)

И еще по поводу qmoda я что то не разберусь когда устанавливаешь подобные модули  как их потом настраивать или отключат в qmode а то в модулях не отображает не как понять не могу

Share this post


Link to post
Share on other sites

Скачал файл что то не работает, там нужно все менять как выше описано? (есть готовый рабочий?)

И еще по поводу qmoda я что то не разберусь когда устанавливаешь подобные модули  как их потом настраивать или отключат в qmode а то в модулях не отображает не как понять не могу

vqmod создает папку xml в своей директории, там и лежат собственно файлы, изменяющие стандартный функционал. Если переименовать расширение подобного файла (например, mod.xml0 вместо mod.xml), это приведет к "отключению" мода. Ну или можно просто удалить ненужный файл. Что же касается изменений, где-то была неплохая инструкция (пришлю в личке).

 

Также пришлю готовый файл вместе с vqmod'ом в ближайшее время (сейчас он не под рукой).

Share this post


Link to post
Share on other sites

Скачал файл что то не работает, там нужно все менять как выше описано? (есть готовый рабочий?)

И еще по поводу qmoda я что то не разберусь когда устанавливаешь подобные модули  как их потом настраивать или отключат в qmode а то в модулях не отображает не как понять не могу

vqmod создает папку xml в своей директории, там и лежат собственно файлы, изменяющие стандартный функционал. Если переименовать расширение подобного файла (например, mod.xml0 вместо mod.xml), это приведет к "отключению" мода. Ну или можно просто удалить ненужный файл. Что же касается изменений, где-то была неплохая инструкция (пришлю в личке).

 

Также пришлю готовый файл вместе с vqmod'ом в ближайшее время (сейчас он не под рукой).

Ок. буду ждать

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Чтобы к фотке не дополнялись маленькие изображения, в админке можно размеры приравнять, а вот почему идет дубликат привьюшки я не понял ...

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By fofa
      Через OCMOD можно менять javascript - файлы?
    • By santehtop
      Всем привет! Нужна помощь специалиста! Столкнулся с такой проблемой. В карточке товара установлен модуль рекомендуемые товары, но вот беда, на мольных устройствах он не корректно отображается... в частности заметил такую проблему на гугл хроме, яндекс браузере. На мозиле проблем нет
      Ссылка на товар https://santeh-nova.com/2292-newarc-smesiteli-941881

      Вот сама проблема... сжимает


      Подскажите, кто возможно сталкивался с данной проблемой? какие есть возможные варианты решений ? 
       
    • By Mojitoua
      Всем привет.
      Ищу исполнителя.
      На сайте есть выпадающее меню (по нажатию - КАТАЛОГ ТОВАРОВ)
      Эту кнопку и все выпадающие меню нужно скрыть от поисковиков, то есть оставить для людей (юзабилити).
      Сделать это нужно по умному, без noindex и nofollow, я так понимаю альтернативы аяксу нет.
      Уверен здесь хорошо это реализовано, как пример f.ua.
    • By Kingfrelance
      Добрый день, решил переделать стандартные модули "рекомендуемые" опенкарт 2.3 в виде карусели товаров, ситуации такова. Сделал верстку, подключил slick slider. По умолчанию установил в слайдер что товаров будет 4 на ПК версии. Но тут таков вопрос, если товаров меньше 4 то слайдер не работает корректно
      область слайдера становится маленькой и карточку товара плющит. Если больше 4 то все гуд.
      вот код
       

      Вот скриншот
      там где рекомендуемые то это проблема а там где хит продаж, там больше 3 продуктов, там все гуд
      Вот
    • By Yarilo
      Добрый день, Форумчане! Появилась надобность добавить на сайт конвертер физических величин. На просторах интернета нашёл готовый бесплатный код. Но не получается его добавить =(
       
       
      Добавляю через редактор, но после вставки кода (который выше), обратно закрыть редактор уже нельзя, только удалив весь код целиком.
      http://prntscr.com/mzx6ka
       
      Может, кто подсказать, как запустить?
  • Recently Browsing   0 members

    No registered users viewing this page.

×

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.