2015-08-14 155 views
0

我有一個功能,使兩個按鈕。 一個按鈕會自動向下滾動,另一個向上滾動。第一次點擊時功能沒有正確啓動

它通過一個數組並更改每個水龍頭上的按鈕。

我的問題是,我必須點擊兩次按鈕才能使它工作,然後它不會被解僱。

在這裏我沒有看到邏輯錯誤嗎?

我想要它的箭頭行事像twitter引導圖像carousal。我想點擊箭頭,讓他們帶我到下一個或上一個部分。

這是網頁,我試圖改變 IMG取出箭頭的截圖

網址中移除

對不起,我刪除了IMG和URL但不是活但這個網站,不應該這樣看待。儘管我還是在醃製。

我解決了這個問題。閱讀評論,如果你有這樣的一個類似的。 謝謝大家!

$(function() { 
    var leftArrow = $('#left-arrow') 
    var rightArrow = $('#right-arrow') 




    rightArrow.bind("tap", rightTapHandler) 
    function rightTapHandler(event){ 
     if (ai == 0) { 
      alert('0' + event) 
      ai = 1 
      controllerContainer.innerHTML = linkArrayForwards[ai] + '<div id="right-arrow" class="arrow"></div></a>' + linkArrayForwards[0] + '<div id="left-arrow" class="arrow"></div></a>'; 
      return 
     } else if (ai > 0) { 
      alert(ai) 
      ai++ 
      controllerContainer.innerHTML = linkArrayForwards[ai] + '<div id="right-arrow" class="arrow"></div></a>' + linkArrayForwards[ai - 1] + '<div id="left-arrow" class="arrow"></div></a>'; 
      return      
     } else if (ai >= linkArrayBackswards.length) { 
      ai = linkArrayBackswards.length; 
      controllerContainer.innerHTML = linkArrayForwards[ai] + '<div id="right-arrow" class="arrow"></div></a>' + linkArrayForwards[ai - 1] + '<div id="left-arrow" class="arrow"></div></a>'; 
      return 
     } else { 
      alert('nothin') 
      return false 
     } 


    }; 
    leftArrow.bind("tap", leftTapHandler) 
    function leftTapHandler(event) { 
     if (ai == 0) { 
      alert('0' + event) 
      ai = 1 
      controllerContainer.innerHTML = linkArrayBackswards[ai] + '<div id="right-arrow" class="arrow"></div></a>' + linkArrayBackswards[0] + '<div id="left-arrow" class="arrow"></div></a>'; 
      return 
     } else if (ai > 0) { 
      alert(ai) 
      ai-- 
      controllerContainer.innerHTML = linkArrayBackswards[ai] + '<div id="right-arrow" class="arrow"></div></a>' + linkArrayBackswards[ai - 1] + '<div id="left-arrow" class="arrow"></div></a>'; 
      return 
     } else if (ai >= linkArrayBackswards.length) { 
      ai = linkArrayBackswards.length; 
      controllerContainer.innerHTML = linkArrayBackswards[ai] + '<div id="right-arrow" class="arrow"></div></a>' + linkArrayBackswards[ai - 1] + '<div id="left-arrow" class="arrow"></div></a>'; 
      return 
     } else { 
      return false 
     } 

    }; 
}) 
+2

是否有減少的情況下呢? – evolutionxbox

+0

「這是一個減少的情況下」是什麼意思?我可以嘗試綁定,但我使用jQuery手機和API說「jQuery(」.selector「).on(」tap「,function(event){...})」 – Christian4423

+0

只是,看到牆代碼不會幫助任何人。嘗試將代碼縮減爲導致問題的原因並將其放入問題中。 – evolutionxbox

回答

1

從我notised在您的網站,它提醒上任何兩個箭頭的第一次點擊「0 [選項選項]」。

if (ai == 0) { 
     alert('0' + event) 
     ai = 1 

「艾== 0」必須是真實的。它是用「0」的唯一警報在它的唯一原因,它會彈出該警報,據我所知&看到。

除此之外,一旦你點擊OK警覺,箭頭似乎工作對我來說完全沒有問題..

編輯
你確定之前,「如果你宣佈AI(AI == 0)「檢查? 如果你不是。刪除警報,使代碼看起來像這樣(對於兩個箭頭):

if (ai == 0) { 
     ai = 1 
+0

是的,我修改了一點,以獲得這一點。但之後它什麼都不做。它會在這之後把你帶到第3節,等等。 – Christian4423

+0

雖然我得到它的工作....我結束了附加onclick =「函數()」我想用花哨的jQuery和「很酷」,但這也可以 – Christian4423

相關問題