Blocco personalizzato (Slick Slider) non funziona
-
13-12-2019 - |
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?
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>
.