Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    28

    Slideshow con jquery si blocca

    Ciao a tutti Ho provato a realizzare una slideshow a bottoni usando jquery. I bottoni vengono disabilitati durante l'animazione della slideshow e riabilitati al termine, solo che al 2° click i bottoni rimangono disabilitati

    posto qui sotto il codice

    codice:
    ​$(window).load(function(){
        var left_image,
             width_image=$("form#servizi_slideshow div > img.img_0").width();
            
        for(i=0;i<12;i++)
            $("form#servizi_slideshow div > img.img_"+i).css("left",width_image*i);
                
        //previous image
        $("form#servizi_slideshow button.prev").click(function(){
            left_image=$("form#servizi_slideshow div > img.img_0").position();
            if(left_image.left!=0){
                $("form#servizi_slideshow button.prev").attr("disabled","disabled").delay(1000).queue(function(){$(this).removeAttr("disabled")});
                $("form#servizi_slideshow button.next").attr("disabled","disabled").delay(1000).queue(function(){$(this).removeAttr("disabled")});
                for(i=0;i<12;i++){
                    left_image=$("form#servizi_slideshow div > img.img_"+i).position();
                    $("form#servizi_slideshow div > img.img_"+i).animate({left:left_image.left+width_image},1000);
                }
            }
        });
        
        //next image
        $("form#servizi_slideshow button.next").click(function(){
            left_image=$("form#servizi_slideshow div > img.img_11").position();
            if(left_image.left!=0){
                $("form#servizi_slideshow button.prev").attr("disabled","disabled").delay(1000).queue(function(){$(this).removeAttr("disabled")});
                $("form#servizi_slideshow button.next").attr("disabled","disabled").delay(1000).queue(function(){$(this).removeAttr("disabled")});
                for(i=0;i<12;i++){
                    left_image=$("form#servizi_slideshow div > img.img_"+i).position();
                    $("form#servizi_slideshow div > img.img_"+i).animate({left:left_image.left-width_image},1000);
                }
            }
        });
    });

    grazie in anticipo
    Ultima modifica di Andrea44; 05-03-2015 a 16:52

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    28
    Problema risolto, avevo dimenticato di aggiungere .dequeue() dopo $(this).removeAttr("disabled")

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.