2012-05-22 110 views
0

我有一個div「.gallery」的多個實例,我想要選擇div的id,.gallery的特定實例坐在點擊上。然後這將填充一個變量,我可以使該圖像只在該div的庫中發生變化。問題在於頁面似乎嘗試進行圖像交換,然後更改變量,因此圖像在第一次單擊時不會更改,更糟糕的是,第一次單擊不同的畫廊時,它會更改圖像的圖像最後一個與您互動的畫廊。目前有一個JavaScript警報,我每次點擊報告你點擊的div的div時都會彈出。如果你想玩這個遊戲,那麼我現在的頁面處於當前狀態。 www.ryanscasey.com/redesignJavascript/JQuery執行命令

直的JavaScript如下:

$(document).ready(function() { 

    var clickedDiv; 

    $('.gallery').click(function() { 
     clickedDiv = $(this).parent().parent().attr("id"); 
     $('#' + clickedDiv + ' .thumbs img').click(function() { 
      $('#' + clickedDiv + ' .largeImage').html($(this).attr('alt')); 
     }); 
     alert(clickedDiv); 
    }); 
}); 

回答

0

我想這是你想要的。聽起來你不需要綁定多個點擊事件。您的方式,它會綁定一個點擊事件,每次點擊一個.gallery項目。如果這不起作用,請告訴我,我們將嘗試從那裏開始工作。

$(document).ready(function() { 
    $('.gallery .thumbs img').click(function() { 
     var $this = $(this), 
      $gallery = $this.closest('.gallery'), 
      $large = $gallery.find('.largeImage'); 

     $large.html($this.attr('alt')); 
    }); 
}); 

編輯:我看了看您的網站,我已經調整了我的代碼。您想要將點擊事件綁定到縮略圖,而不是整個圖庫。

+0

工作完美!謝謝! –