1 Dernière modification par november (11-07-2012 14:57:01)

Sujet : Position d'un script

Bonjour à tous,

Avant tout, concernant mon sujet précedent, il peut être fermé, j'ai utilisé un plugin tout fait qui fonctionne très bien.

Je travaille sur un autre site et je rencontre un petit problème que je n'arrive pas à résoudre.

J'utilise un script (roundabout) pour un carousel 3D. Bizarrement celui-ci ne fonctionne que lorsque il est placé dans le body, en dehors de tout div.
Lorsque j'essaye de le mettre dans le head il ne marche plus. A quoi cela est du?

Cela me pose problème car via mon menu, ce carousel est chargé lorsqu'on est dans une certaine section du menu. Or avec le prepend (il est bien paramétré en "true"), le carrousel ne retrouve plus son script et ne fonctionne plus.

Voilà le fameux script en question:

<script type="text/javascript">
(function($) {

var $descriptions = $('#carousel-descriptions').children('li'),
    $controls = $('#carousel-controls').find('span'),
    $carousel = $('#carousel')
        .roundabout({childSelector:"img", minOpacity:1, autoplay:true, autoplayDuration:5000, autoplayPauseOnHover:true })
        .on('focus', 'img', function() {
            var slideNum = $carousel.roundabout("getChildInFocus");
            
            $descriptions.add($controls).removeClass('current');
            $($descriptions.get(slideNum)).addClass('current');
            $($controls.get(slideNum)).addClass('current');
        });

$controls.on('click dblclick', function() {
    var slideNum = -1,
        i = 0, len = $controls.length;

    for (; i<len; i++) {
        if (this === $controls.get(i)) {
            slideNum = i;
            break;
        }
    }
    
    if (slideNum >= 0) {
        $controls.removeClass('current');
        $(this).addClass('current');
        $carousel.roundabout('animateToChild', slideNum);
    }
});

}(jQuery));
</script>

Quelle peut-être la cause de son non fonctionnement suite à un prepend?

Merci d'avance pour d'éventuelles pistes, cela m'embêterait de devoir laisser tomber l'idée d'un site "avec une seule page".

November