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

Интересный способ работы с colorbox


RGB

Recommended Posts

Может и не догадался. Я думал, что colorbox уже используется в opencart, если я ошибаюсь то направьте на путь истины.

В вашем шаблоне может быть убран (да и зачем его оставлять, если cloudzoom используется?).

Возьмите из дефолтного.

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


Может и не догадался. Я думал, что colorbox уже используется в opencart, если я ошибаюсь то направьте на путь истины.

он и используется, но не на странице статей, где вы пытаетесь его вызвать, значит скорее всего его нет в header.tpl из-за того, что у вас версия новее 1541, а значит надо туда внести изменения из этого поста https://opencartforum.com/topic/23880-besplatnye-vsplyvaiuschie-uvedomleniia-free-popup-cart-vqmod/?do=findComment&comment=210697

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

 Спасибо за помощь! Все получилось (но только в карточке продукта в закладках),а вот в статье colorbox не срабатывает. В header.tpl - у меня все это было прописано. Привожу рабочий код для карточки товара:

<p><a class="colorbox" href="картинка_1.jpg" rel="group1"><img src="картинка_1.jpg" style="height: 100px; width: 100px;" /></a></p>
<p><a class="colorbox" href="картинка_2.jpg" rel="group1"><img src="картинка_2.jpg" style="height: 100px; width: 100px;" /></a></p>
Змінено користувачем nadim
Надіслати
Поділитися на інших сайтах


  • 3 months later...

Помогите разобраться до 8марта.. Хочу установить "кнопки поделится в социалках" для каждой картинки, которая открывается в окне колорбокс. 

Вывод кнопок удалось сделать следующим путем:

в product.tpl установил код

<script type="text/javascript">(function() {
  if (window.pluso)if (typeof window.pluso.start == "function") return;
  if (window.ifpluso==undefined) { window.ifpluso = 1;
    var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
    s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
    s.src = ('https:' == window.location.protocol ? 'https' : 'http')  + '://share.pluso.ru/pluso-like.js';
    var h=d[g]('body')[0];
    h.appendChild(s);
  }})();</script>

#####
<? $share_buttons='<div class="pluso" data-background="transparent" data-options="big,square,line,horizontal,nocounter,theme=04" data-services="vkontakte,odnoklassniki,facebook,print" data-image="'.$image['popup'].'" style="margin-top: -30px;text-align: center;"></div><div class="clear"></div>'; ?>

<script type="text/javascript"><!--
jQuery("#cboxContent").append('<? echo $share_buttons;?>');
//--></script> 
 

Но не знаю как передать адрес картинки открытой в текущем окне колорбокса property="og:image"  . В данном коде могу вывести только последнюю картинку из цикла 

data-image="'.$image['popup'].'"

А как подставлять актуальную ссылку ума не приложу.

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


  • 4 months later...

Помогите разобраться до 8марта.. 

Лучше поздно, чем никогда:)

 

Можно повесить на коллбек onComplete например (да и на любой другой) такой алерт

alert(this.href);

и в нем this.href и будет нужным вам адресом текущей картинки

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

  • 1 month later...

Я прошу прощения, может не в тему, но инфу по доставке и оплате лучше разместить просто на странице товара, удобно - табами. А что бы не прописывать заголовок таба и его содержимое прямо в коде product.tpl, лучше скриптом подтягивать их из заранее созданной в optncart страницы.

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


странно, на главной не работает хоть и подключен в хедере колорбокс

ссылку на главную покажите

 

 

Я прошу прощения, может не в тему, но инфу по доставке и оплате лучше разместить просто на странице товара, удобно - табами. А что бы не прописывать заголовок таба и его содержимое прямо в коде product.tpl, лучше скриптом подтягивать их из заранее созданной в optncart страницы.

я с вами согласен, но ведь кроме карточки товара, есть масса других мест, где покупателя может заинтересовать какая-то информация, и при этом не желательно, чтобы покупатель убежал на другую страницу, например - оформление заказа, где можно вывалить полный текст статьи о доставке либо дать ссылку на статью (а покупатель может и не вернуться с той статьи), либо использовать способ из этой темы со всплывающим окошком

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

ссылку на главную покажите

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

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

<?php foreach ($informations as $information) { ?> <a class="colorboxInfo" href="<?php echo $information['href']; ?>"><?php echo $information['title']; ?></a> <?php } ?>

класс colorbox, но при этом во первых в окне открывается не текст статьи а весь сайт и во вторых наблюдаются странные глюки колорбокса будто открывается сразу 2 попап окна

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


  • 2 weeks later...

Как может колорбокс выводить статьи куда либо? Не понял ваш вопрос

как понять куда либо? Данная тема открыта на обсуждение того что, статьи которые мы прописываем ручками (например в хедере) можно выводить через колорбокс, ок, это работает, но ссылки на статьи приходится писать в ручную.

Как сделать так, что бы колорбокс корректно открывал их из функции -

<?php foreach ($informations as $information) { ?> <a class="colorboxInfo" href="<?php echo $information['href']; ?>"><?php echo $information['title']; ?></a> <?php } ?>
Надіслати
Поділитися на інших сайтах


  • 3 weeks later...

Подскажите можно как то сделать в colorboxe карту яндекса интерактивную. С вашим скриптом текст открывается на ура. А вот script от яндекса не хочет.

<script type="text/javascript" charset="utf-8" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=wR61abJt9zwппаава9FCHuKPy_&width=600&height=450"></script> 

Вставляю его в новую статью. По прямой ссылке открывается карта. А через colorbox просто пустое окно с названием статьи.

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


  • 4 weeks later...

А если вставлять не так, а через фрейм?

В статье вставил так 

<script type="text/javascript" charset="utf-8"><iframe frameborder="0" height="450" scrolling="no" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=wR61abJt..............yZFlXSpN9FCHuKPy_&width=600&height=450" width="600"></iframe>​</script>

в colorbox крутиться загрузка и ничего не открывается. Как правильно прописать?

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


А если только это вставить?

 

 

<script type="text/javascript" charset="utf-8"><iframe frameborder="0" height="450" scrolling="no" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=wR61abJt..............yZFlXSpN9FCHuKPy_&width=600&height=450" width="600"></iframe></script>

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

А если только это вставить?

<iframe frameborder="0" height="450" scrolling="no" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=wR61abJt..............yZFlXSpN9FCHuKPy_&width=600&height=450" width="600"></iframe>

Выводит текст скрипта 

 

(function(A,o,f,s,B,c){if(!A.response){return}var m=window.location.protocol==="file:"?"http:":"",a=m+c+"2.0/",j={MAP:"yandex#map",SATELLITE:"yandex#satellite",HYBRID:"yandex#hybrid",PMAP:"yandex#publicMap"},r=A.response.map,t=["package.map","package.controls","package.geoObjects"],u=o[0]?o[0]+"px":"100%",p=o[1]?o[1]+"px":"100%",y=String(Number(new Date))+String(Math.round(Math.random()*1000000)),l="ymaps"+y,b="fid"+y,C=r.lang||"ru-RU",d=a+"?................

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


Так тоже выдает текст скрипта

<iframe frameborder="0" height="450" scrolling="no" <script type="text/javascript" charset="utf-8" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=wR61abJt9zw7B....lXSpN9FCHuKPy_&width=600&height=450"><script> width="600"></iframe>
Надіслати
Поділитися на інших сайтах


  • 4 weeks later...

Подскажите можно как то сделать в colorboxe карту яндекса интерактивную. С вашим скриптом текст открывается на ура. А вот script от яндекса не хочет.

<script type="text/javascript" charset="utf-8" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=wR61abJt9zwппаава9FCHuKPy_&width=600&height=450"></script> 

Вставляю его в новую статью. По прямой ссылке открывается карта. А через colorbox просто пустое окно с названием статьи.

 

 

Попробуйте такое решение 

function colormap(sid) {
	$.colorbox({
		html:'<div id="ymp" style="width: 500px; height: 400px;" ></div>',
		onComplete:function() {
		$.getScript("//api-maps.yandex.ru/services/constructor/1.0/js/?sid="+sid+"&width=500&height=400&id=ymp",function() {
		$.colorbox.resize();
		});}
	});
}

Вызывать например через onclick="colormap(sid)"

 

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


  • 3 weeks later...

Попробуйте такое решение 

function colormap(sid) {
	$.colorbox({
		html:'<div id="ymp" style="width: 500px; height: 400px;" ></div>',
		onComplete:function() {
		$.getScript("//api-maps.yandex.ru/services/constructor/1.0/js/?sid="+sid+"&width=500&height=400&id=ymp",function() {
		$.colorbox.resize();
		});}
	});
}

Вызывать например через onclick="colormap(sid)"

 

Что не работает, может куда то не туда пишу?

В статье в конце вставил скрипт 

function colormap(sid)........

Вызываю в этой же статье так

<a onclick="colormap(wR61abJt9zw7B....FlXSpN9FCHuKPy_)"> <strong>на карте</strong></a>

При нажатии ничего не происходит, в отладчике ошибка

 

 

Uncaught ReferenceError: wR61abJt9zw7B....FlXSpN9FCHuKPy_ is not defined

Подскажите чего не так делаю. Я в скриптах не силен.

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


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

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

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

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

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

Вхід

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

Вхід зараз
×
×
  • Створити...

Important Information

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