Автор Тема: Как отключить модальное окно для ФОТОК в мобильной версии?  (Прочитано 54 раз)

08 Июнь 2018, 17:12:32
  • Фрилансер
  • *
  • Сообщений: 151
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
двойной клик по изображению http://prntscr.com/jsk3mb
и вот результат http://prntscr.com/jsk3yh

я отключил Jqzoom для мобильной версии...

Как лечить?
08 Июнь 2018, 18:36:16
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 14786
  • Репутация: +14588/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Была такая тема, там советывали добавить такой код для события клика на фото
var onClick = function() {
       if ($.detectMedia && $.detectMedia('mobile')) return true; //Не открываем окна в мобильной версии
08 Июнь 2018, 19:01:33
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 151
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Была такая тема, там советывали добавить такой код для события клика на фото
var onClick = function() {
       if ($.detectMedia && $.detectMedia('mobile')) return true; //Не открываем окна в мобильной версии

это нужно вставляь в jquery.fancybox.js
там реально черт ногу сломит )))))) http://prntscr.com/jslo9p
var onClick = function() {
       if ($.detectMedia && $.detectMedia('mobile')) return true; //Не открываем окна в мобильной версии
после какой строчки ставить))))




08 Июнь 2018, 19:17:31
Ответ #3
  • Фрилансер
  • *
  • Сообщений: 151
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Была такая тема, там советывали добавить такой код для события клика на фото
var onClick = function() {
       if ($.detectMedia && $.detectMedia('mobile')) return true; //Не открываем окна в мобильной версии


в product.tpl нашле такой код, может туда встаить, скажем прям в <img   
???
{if $have_image}
<span id="view_full_size">
{if $jqZoomEnabled && $have_image && !$content_only}
<a class="jqzoom" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" rel="gal1" href="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')|escape:'html':'UTF-8'}">
<img itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}"/>
</a>
{else}
<img id="bigpic" itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" width="{$largeSize.width}" height="{$largeSize.height}"/>
{if !$content_only}
<span class="span_link no-print"></span>
{/if}
{/if}
</span>
{else}
<span id="view_full_size">
<img itemprop="image" src="{$img_prod_dir}{$lang_iso}-default-large_default.jpg" id="bigpic" alt="" title="{$product->name|escape:'html':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}"/>
{if !$content_only}
<span class="span_link">
{l s='View larger'}
</span>
{/if}
</span>
08 Июнь 2018, 23:00:34
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 14786
  • Репутация: +14588/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Код в product.js или js файл, где у вас настройки зума.
09 Июнь 2018, 17:32:52
Ответ #5
  • Фрилансер
  • *
  • Сообщений: 151
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Код в product.js или js файл, где у вас настройки зума.


я вставил этот код

в jquery.jqzoom.js

 //BASE IMAGE
        var img = $("img:eq(0)", el);
        el.title = $(el).attr('title');
        el.imagetitle = img.attr('title');
        var zoomtitle = ($.trim(el.title).length > 0) ? el.title : el.imagetitle;
        var smallimage = new Smallimage(img);
        var lens = new Lens();
        var stage = new Stage();
        var largeimage = new Largeimage();
        var loader = new Loader();



var onClick = function() {
       if ($.detectMedia && $.detectMedia('mobile')) return true; //Не открываем окна в мобильной версии



        //preventing default click,allowing the onclick event [exmple: lightbox]
        $(el).bind('click', function (e) {
            e.preventDefault();
            return false;
        });
НЕ ПОМОГЛО((((((((
есть еще варики, может я не туда вставялю?
09 Июнь 2018, 17:38:55
Ответ #6
  • Фрилансер
  • *
  • Сообщений: 151
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
ткаже попробовал в
//set jqZoom parameters if needed
compensante = scrollCompensate();
if (($(window).width()+scrollCompensate()) >= 768) {
if (typeof(jqZoomEnabled) != 'undefined' && jqZoomEnabled)
{
if ($('#thumbs_list .shown img').length)
{
var new_src = $('#thumbs_list .shown img').attr('src').replace('cart_', 'large_');
if ($('.jqzoom img').attr('src')!= new_src)
$('.jqzoom img').attr('src', new_src).parent().attr('href', new_src);
}

var onClick = function() {
       if ($.detectMedia && $.detectMedia('mobile')) return true; //Не открываем окна в мобильной версии
}
   
$('.jqzoom').jqzoom({
zoomType: 'standard', //innerzoom/standard/reverse/drag
zoomWidth: 330, //zooming div default width(default width value is 200)
zoomHeight: 410, //zooming div default width(default height value is 200)
xOffset: 5, //zooming div default offset(default offset value is 10)
yOffset: 0,
title: false,

});

}

ТОЖе не помогло((((((((

есть еще идеи??
09 Июнь 2018, 20:35:12
Ответ #7
  • Ветеран
  • *****
  • Сообщений: 1106
  • Репутация: +5/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Попробуйте в product.js добавить
$(document).ready(function() {
$('#thumbs_list_frame li a').on('click', function(event) {
var target = event.target ? event.target : event.srcElement;
var targetId = target.id;
if (targetId.indexOf('thumb') !== -1) {
event.preventDefault();
return false;
} else {
$(this).on("click.fb-start");
$(this).fancybox({
'hideOnContentClick': true,
'openEffect': 'elastic',
'closeEffect': 'elastic',
'live': false,
'afterClose': function {
$('.fancybox.shown').unbind('click.fb-start');
}
});
}
});
});
09 Июнь 2018, 20:46:05
Ответ #8
  • Фрилансер
  • *
  • Сообщений: 151
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Попробуйте в product.js добавить
$(document).ready(function() {
$('#thumbs_list_frame li a').on('click', function(event) {
var target = event.target ? event.target : event.srcElement;
var targetId = target.id;
if (targetId.indexOf('thumb') !== -1) {
event.preventDefault();
return false;
} else {
$(this).on("click.fb-start");
$(this).fancybox({
'hideOnContentClick': true,
'openEffect': 'elastic',
'closeEffect': 'elastic',
'live': false,
'afterClose': function {
$('.fancybox.shown').unbind('click.fb-start');
}
});
}
});
});



Спасибо, но нет, НЕ ПОМОГЛО ((( :'( :'( :'( :'(
http://prntscr.com/jt0iat
опят на всеь моб экран
09 Июнь 2018, 21:26:39
Ответ #9
  • Ветеран
  • *****
  • Сообщений: 1106
  • Репутация: +5/-1
  • Сообщество PrestaShop
    • Просмотр профиля
#thumbs_list_frame li aЭти классы и ид для дефолтной темы у вас может отличатся.