2012-02-03 37 views
0

我不能找出我的生活爲什麼第二次點擊下一個按鈕不會觸發roate。調用函數在一次,但不是另一個

這兩個$ slideNumber的值都是1 2 3或4,而且我已經使用alert來告訴我這是事實。

其基本上不會觸發rotate();在第二個

點擊數完美的作品;

//Paging + Slider Function 
rotate = function() { 

    var triggerID = $slideNumber - 1; //Get number of times to slide 
    var image_reelPosition = triggerID * divWidth; //Determines the distance the image reel needs to slide 


    //Slider Animation 
    $(".image_reel").animate({ 
     left: -image_reelPosition 
    }, 500); 
}; 

//click on numbers (this one works) 
$(".paging a").click(function() { 
    $active = $(this); //Activate the clicked paging 
    $slideNumber = $active.attr("rel"); 
    rotate(); //Trigger rotation immediately 
    return false; //Prevent browser jump to link anchor 
}); 



//click on next button (this one does not work) 
$('#next').click(function() { 
    var left_indent = parseInt($('.image_reel').css('left')) - divWidth; 
    var slideNumberOn = (left_indent/divWidth); 
    var slideNumber = ((slideNumberOn * -1) + 1); 
    $slideNumber = slideNumber; 
    rotate(); //Trigger rotation immediately 
    return false; //Prevent browser jump to link anchor 
}); 

HTML:

<div class="paging"> 
       <a href="#" rel="1">one</a> 
       <a href="#" rel="2">two</a> 
       <a href="#" rel="3">three</a> 
       <a href="#" rel="4">for</a> 
      </div> 

      <div class="nav"> 
       <a id="prev" class="active" href="#">prev</a> 
       <a id="next" class="active" href="#">next</a> 
      </div> 
+0

你可以驗證1)非操作實例正在被調用,並且2)'$ slideNumber'保存了正確的值嗎? – Dutchie432 2012-02-03 15:34:16

+2

使用全局變量幾乎總是一個壞主意。您應該傳遞'$ slideNumber'和'divWidth'作爲參數。 – 2012-02-03 15:35:14

+1

通過不起作用,你的意思是函數不會被調用?你的下一個按鈕的html是什麼樣的? – 2012-02-03 15:35:20

回答

1

這聽起來像第二個點擊功能正在部分通過錯誤。嘗試將console.log語句放在函數的開頭。如果您可以放置​​它們以便打印出來,並且發現下一個錯誤,那麼您已經找到了該錯誤的位置。

+0

完美髮現問題是什麼。基本上有些代碼正在尋找$ active.attr(「rel」);因爲第二次點擊沒有這個,它不會運行 – odd 2012-02-03 15:46:28

0

在哪裏裏面#next單擊處理定義divWidth$slideNumber?因爲它會拋出錯誤並且永遠不會到達要執行的下一條語句。

+0

這些都是我的代碼進一步設置,$ slideNumber確實提醒我需要發生的值,在這種情況下,它1,2,3或4 – odd 2012-02-03 15:41:57

相關問題