2013-08-27 49 views
0

我正在嘗試製作一個非常簡單的圖片庫查看器,並且某些功能無法正常使用我的數組及其數據,因此,頁面不響應數組密鑰更改。我想要的是當單擊next-buttonprevious-button時,鍵中的變量與頁面上顯示的信息一起更改。這裏是我的代碼數組關鍵變量正在改變,但不是可變數據

HTML

<div id="gallery"> 
    <div id="gallery-control-bar"> 
    <div id="gallery-buttons" class="control-bar-item"> 
     <div id="previous-button" class="gallery-button">&larr;</div> 
     <div id="next-button" class="gallery-button">&rarr;</div> 
    </div><!-- "#gallery-buttons" --> 
    <div id="image-index" class="control-bar-item"> 
     <span id="current-post">1</span> of <span id="post-total">29</span> 
    </div><!-- "#image-index" --> 
    <div id="gallery-type" class="control-bar-item"> 
     <img id="gallery-switch" alt="Gallery Icon" src="images/gallery-icon.png"> 
    </div> 
    </div><!-- "#gallery-control-bar" --> 

    <div id="gallery-image"></div> 
</div><!-- "#gallery" --> 

JS(這是我認爲問題出)

var currentImg = 0; 
var totalImg = js_p_id.length - 1; 

var userCurrent = currentImg + 1; 
var userTotal = js_p_id.length; 

$("#next-button").click(function() { 
    if (currentImg == totalImg) { 
     currentImg = 0; 
    } 
    else { 
     currentImg++; 
    } 
    return; 
}); 

$("#previous-button").click(function() { 
    if (currentImg == 0) { 
     currentImg = totalImg; 
    } 
    else { 
     currentImg--; 
    } 
    return; 
}); 

$("#gallery-image").html("<img src='" + js_p_src[currentImg] + "'>"); 
$("#gallery-title").html(js_p_title[currentImg]); 
$("#gallery-medium").html(js_p_medium[currentImg]); 
$("#gallery-size").html(js_p_size[currentImg]); 
$("#gallery-date").html(js_p_date[currentImg]); 

$("#current-post").html(userCurrent); 
$("#post-total").html(userTotal); 

js前綴的變量是已經從轉換到JS數組在另一個腳本中使用JSON的PHP,這些工作正常,沒有問題。從技術上講,每次點擊上一個按鈕和下一個按鈕時,應該切換圖像及其信息,但不要。我對所有變量都發出警報,並且在按下按鈕時它們都會發生變化,但頁面上的圖像/信息保持不變。我在這裏做錯了什麼?

+0

'currentImg'修改後,更改_DOM_的代碼在哪裏? –

+0

@PaulS。我想我沒有?這是我的問題嗎?最有可能的是 – j0sh1e

+0

。事實上,它看起來像在一個點擊事件中修改'currentImg',但是卻沒有做任何事情。 –

回答

1
$("#gallery-image").html("<img src='" + js_p_src[currentImg] + "'>"); 

這需要在兩個分頁功能中。

您正在遞增/取消currentImg變量,但是之後您不再設置圖像。

編輯:或者在它自己的功能,然後從另外兩個調用它。編輯2:他們都需要去那裏。

function changeImg(){ 
    $("#gallery-image").html("<img src='" + js_p_src[currentImg] + "'>"); 
    $("#gallery-title").html(js_p_title[currentImg]); 
    $("#gallery-medium").html(js_p_medium[currentImg]); 
    $("#gallery-size").html(js_p_size[currentImg]); 
    $("#gallery-date").html(js_p_date[currentImg]); 
}