2012-07-03 49 views
0

我需要一點幫助,我的腳本。我試圖從默認幻燈片(#slide1)隱藏左側導航箭頭。首先工作,但隨着用戶滑過幻燈片並返回到相同的幻燈片(#slide1)箭頭顯示。 看着我的劇本,誰能告訴我,我做錯了什麼:在默認幻燈片上隱藏左側箭頭

var curSlide = 0; 

function setSlide(num,dir){ 
    var oldSlide = curSlide; 
    if(num>5) num = 1; 
    else if(num<1) num = 5; 
    var showDir = ""; 
    var hideDir = ""; 
    (dir=="f"){ 
    showDir = "right"; 
    hideDir = "left"; 
    } else { 
    showDir = "left"; 
    hideDir = "right"; 
} 
if(curSlide == 0){ 
$("#slide1").show(); 
$('#left_arrow').hide(); 
curSlide = 1;  

} else { 
curSlide = num;  

$("#slide"+curSlide).show('slide',{direction:showDir},600); 
    $("#slide"+oldSlide).hide('slide',{direction:hideDir},600); 
$('#left_arrow').show(); 
} 

}

function nextSlide(){ 
    setSlide(curSlide*1+1,"f"); 
    }  

function prevSlide(){ 
setSlide(curSlide*1-1,"b"); 
} 



$(document).ready(function() { 
if($('#show_picks')) { 

$('#show_picks area').each(function() { 
     $(this).click(function(e) { 
      e.preventDefault(); 
      setSlide($(this).attr('id'),"f"); 
     }); 
     $(this).mouseover(function(e) { 
      $(this).css("cursor", "pointer"); 
     }); 
     $(this).mouseout(function(e) { 
      $(this).css("cursor", "default"); 
     }); 

    }); 
} 
    $("#left_arrow").click(function(e) { 
      e.preventDefault(); 
      prevSlide(); 
    }); 

    $("#right_arrow").click(function(e) { 
      e.preventDefault(); 
      nextSlide(); 
    }); 


    $("#left_arrow").mouseover(function(e) { 
      $("#left_arrow").css("cursor", "pointer"); 
    }); 


    $("#left_arrow").mouseout(function(e) { 
      $("#left_arrow").css("cursor", "default"); 
    }); 


    $("#right_arrow").mouseover(function(e) { 
      $("#right_arrow").css("cursor", "pointer"); 
    }); 


    $("#right_arrow").mouseout(function(e) { 
      $("#right_arrow").css("cursor", "default"); 
    }); 

    for(var i=2;i<6;i++){ 
     $("#slide"+i).hide(); 
     } 
    setSlide(0,"f"); 
}); 
+0

u能後置HTML標記? –

回答

0

問題是你檢查當前的幻燈片是0隱藏左箭頭。這隻會發生第一次的時間腳本加載。

在執行永遠是0再次因爲

if(num>5) num = 1; 
    else if(num<1) num = 5; 

curSlide = 1; 

curSlide = num;  

你1和5或1永遠不爲0,你的條件之間設置NUM hide is

if(curSlide == 0){ 
$("#slide1").show(); 
$('#left_arrow').hide(); 

必須設置curslide=1在乞討和更改條件if(curSlide == 1){

+0

嗨,如果我將它更改爲1,則無任何幻燈片。對不起,這不起作用... – marb

+0

它不工作,因爲'if(curSlide == 0){ $(「#slide1」)。show(); $('#left_arrow')。hide(); curSlide = 1;其他{ curSlide = num; (「#slide」+ curSlide).show('slide',{direction:showDir},600); (「#slide」+ oldSlide).hide('slide',{direction:hideDir},600); $('#left_arrow')。show(); }'你如果重新思考並提出了其他的.show()和.hide() –

+0

我這樣說,但沒有運氣... – marb