Breakice Posted June 5, 2013 Share Posted June 5, 2013 Buenas noches, Os comento, estoy trabajando en una tienda online, con todo mas o menos terminado salvo algunos detalles. Mi problema es que al realizar el jQZoom sobre un artículo no lo hace a la primera, sino que tengo que deslizar el ratón hacia una miniatura y volver a subir para que me realice el jQzoom. He intentado modificar el product.js pero no consigo dar con la clave y por mas que miro en código nada. A ver si me podéis echar una mano, os pongo la url del artículo directamente ya que es el único que esta "terminado" por ahora. ( http://cascarillamod...oduct&id_lang=1 ) Personalmente el problema que veo es que el jQZoom coge como 1 primera imagen la imagen del artículo por defecto en productos (large_default) y después de deslizar sobre las miniaturas las reemplaza correctamente por el "thickbox". Lo que trato es de o que haga el thickbox directamente o que no muestra nada hasta que no se deslice por las miniaturas pero no consigo dar con ello. Creo que la clave esta aquí: if (typeof(jqZoomEnabled) != 'undefined' && jqZoomEnabled){ ---> $('#bigpic').attr('rel', $('#bigpic').attr('src').replace('large','large')); $('img.jqzoom').jqueryzoom({ xzoom: 400, //zooming div default width(default width value is 200) yzoom: 400, //zooming div default width(default height value is 200) offset: 21 //zooming div default offset(default offset value is 10) //position: "right" //zooming div position(default position value is "right") }); } Muchas gracias de antemano y a ver si hay suerte, jeje. 1 Saludo. Link to comment Share on other sites More sharing options...
Breakice Posted June 7, 2013 Author Share Posted June 7, 2013 (edited) Buenos dias, He dado con la solución, tras depurar y depurar código, para que realice el jQZoom a la primera. Es decir, el problema era el siguiente: La solución esta en product.tpl en la linea 186. <img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')}"{if $jqZoomEnabled} class="jqzoom"{/if} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}"/> Debemos de cambiar la parte que esta en negrita por: <img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')}"{if $jqZoomEnabled} class="jqzoom"{/if} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}"/> El problema es que prestashop por referencia hace el jQZoom de la imagen large_default (la imagen por defecto de la ficha del producto) y lo que se pretende con esta modificación es que coja la thickbox (imagen maximizada alta resolución) para que haga correctamente el zoom. Bueno aunque lo haya tenido que solucionar yo, jeje, espero haber sido de ayuda por si alguien tiene el mismo problema. El resultado es este: 1 Saludo a todos. Web ejemplo: cascarillamodabebe.com VPrestashop: 1.5.4 Edited June 7, 2013 by Breakice (see edit history) 1 Link to comment Share on other sites More sharing options...
caleone Posted June 7, 2013 Share Posted June 7, 2013 Pues muchas gracias, a mi sí que me ha servido. Link to comment Share on other sites More sharing options...
AndresEmprende Posted July 4, 2013 Share Posted July 4, 2013 (edited) Hola, hice los mismo que sugeriste pero no me funciono del todo, luego hice unas modificaciones en el archivo js/product.js en la siguiente linea, lo que hice fue invertir lo resltado de posicion: antes ( 'thickbox', 'large') por ('large', 'thickbox') [/size] //set jqZoom parameters if needed if (typeof(jqZoomEnabled) != 'undefined' && jqZoomEnabled) { $('#bigpic').attr('rel', $('#bigpic').attr('src').replace('[b]large', 'thickbox'[/b])); $('img.jqzoom').jqueryzoom({ xzoom: 479, //zooming div default width(default width value is 200) yzoom: 264, //zooming div default width(default height value is 200) offset: 5//zooming div default offset(default offset value is 10) //position: "right" //zooming div position(default position value is "right") }); } Haciendo estas modificaciones me funciono perfectamente. Espero que le haya sido de gran ayuda Edited July 4, 2013 by AndresEmprende (see edit history) 2 Link to comment Share on other sites More sharing options...
Recommended Posts