Domanda

Cercando di aggiungere un slick ( http://kenwheeler.github.io/slick/ )Slider to homepage.Sembra abbastanza semplice, ma ho sbattuto la testa contro il muro per gli ultimi 2 giorni.

Ecco cosa ho fatto:

1) Creato home_slider.phtml in app/design/frontend/pkg/default/template per creare un blocco personalizzato che visualizza i banner e caricare il cursore JS.alert() per farmi sapere almeno che sta caricando.Ho testato il codice su Jsfiddle per sapere che funziona.

home_slider.phtml

<div class="home_slider">
    <div><a href="111"><img src="<?php echo $this->getSkinUrl('images/media/web-banner_2015_1.png')?>" /></a></div>
    <div><a href="222"><img src="<?php echo $this->getSkinUrl('images/media/web-banner_2015_2.png')?>" /></a></div>
    <div><a href="333"><img src="<?php echo $this->getSkinUrl('images/media/banner3.jpg')?>" /></a></div>
</div>

<!-- <script type="text/javascript" src="<?php echo $this->getJsUrl('slick/slick.min.js')?>"></script> -->

<script type="text/javascript" src="http://cdn.jsdelivr.net/jquery.slick/1.5.0/slick.min.js"></script>  

<script type="text/javascript">
    var slider = $(".home_slider");
    slider.on('init', function(){ 
        alert('fire in the hole!');
    });
    slider.slick({
        initialSlide: 1,
        slidesToShow: 1,
        slidesToScroll: 1
    });
</script>
.

2) local.xml modificato in app/design/frontend/pkg/default/layout per inserire il blocco del cursore sulla homepage direttamente in alto.

local.xml

<?xml version="1.0"?>
<layout version="0.1.0">
    <default>
        <reference name="head">
            <remove name="top.container" />  <!-- does not remove header-language-background completely, done with css -->
            <remove name="welcome" />                   
        </reference>
        <reference name="top.links">
            <remove name="checkout_cart_link"/>  <!-- removes My Cart and Checkout from Account header nav -->      
        </reference>    
    </default>  
    <cms_index_index>
        <reference name="content">
            <block type="core/template" name="home_slider" template="home_slider.phtml" before="-">
            </block>
        </reference>
    </cms_index_index>  
</layout>
.

Il carico dei banner, ma Slick non funziona (Alert non ha licenziato) e non riesco a capire perché.Devo creare un modulo personalizzato?

È stato utile?

Soluzione

Prova questo potrebbe essere è il conflitto di jquery

<script type="text/javascript">
var jQuery = jQuery.noConflict()
    var slider = jQuery(".home_slider");
    slider.on('init', function(){ 
        alert('fire in the hole!');
    });
    slider.slick({
        initialSlide: 1,
        slidesToShow: 1,
        slidesToScroll: 1
    });
</script>
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top