2012-01-31 94 views
3

我有一個行中的6個圖像,第一個時,頁面加載有一個類應用於它使用CSS3應用web轉換。當其他圖像在同一類上進行懸停時,將應用於這些內容,然後在鼠標懸停時將其移除。我需要做的最後一件事是,當其他圖像懸浮在第一個圖像上時,類將被刪除,如果沒有圖像懸浮在第一個圖像上,它的類會再次應用到它。jQuery刪除類時,將其添加到其他元素

這是我到目前爲止有:

$(document).ready(function() { 
    $("#imagePackshot li img").hover(function(){ 
     $(this).addClass('packshot').siblings().removeClass('packshot'); 
    }, 
    function() { 
     $(this).removeClass('packshot'); 
    }) 
    .first().addClass('packshot'); 
}); 

回答

3

你要檢查你刪除一個類之後是否還有沒有其他的圖像與類「packshot」,在這種情況下,將其添加到第一。

$(document).ready(function() { 
     var activeClass = 'packshot', images = $("#gallerySlideshow li img"); 
     var first = images.first().addClass(activeClass); 
     images.hover(function(){ 
      // remove the class from all images who still have it, most likely only one. 
      images.filter("."+activeClass).removeClass(activeClass); 
      // add class to the element that was hovered. 
      $(this).addClass(activeClass); 
     }, 
     function() { 
      // remove class from the image that was hovered out of 
      $(this).removeClass(activeClass); 
      // if no other images have the active class, then give it to the first image 
      if(!images.filter("."+activeClass).size()){ 
       first.addClass(activeClass); 
      } 
     }) 
    }); 

編輯:

使用這個網站的結構,根據您發佈的鏈接,這意味着你不能用「兄弟姐妹」是指接下來的圖像上,由於圖象AREN代碼」在HTML樹T兄弟姐妹:

<ul id="gallerySlideshow"> 
    <li> 
     <a href="page9.html"><img src="thumbnails/thumb9.jpg" width="158" height="236" /></a> 
     <ul id="noimg"> 
      <li> 
       <a href=""><img src="Images/more-like-this.png" /></a> 
      </li> 
     </ul> 
    </li> 

    <li> 
     <a href="page9.html"><img class="box2" src="thumbnails/thumb1.jpg" /></a> 
     <ul id="noimg"> 
      <li> 
       <a href=""><img src="Images/more-like-this.png" /></a> 
      </li> 
     </ul> 
    </li> 

    <li> 
     <a href="page9.html"><img class="box" src="thumbnails/thumb3.jpg" /></a> 
     <ul id="noimg"> 
      <li> 
       <a href=""><img src="Images/more-like-this.png" /></a> 
      </li> 
     </ul> 
    </li> 



    <li> 
     <a href="page9.html"><img class="box1" src="thumbnails/thumb4.jpg" /></a> 
     <ul id="noimg"> 
      <li> 
       <a href=""><img src="Images/more-like-this.png" /></a> 
      </li> 
     </ul> 
    </li> 

    <li> 
     <a href="page9.html"><img class="box3" src="thumbnails/thumb5.jpg" /></a> 
     <ul id="noimg"> 
      <li> 
       <a href=""><img src="Images/more-like-this.png" /></a> 
      </li> 
     </ul> 
    </li> 

    <li> 
     <a href="page9.html"><img class="box4" src="thumbnails/thumb6.jpg" /></a> 
     <ul id="noimg"> 
      <li> 
       <a href=""><img src="Images/more-like-this.png" /></a> 
      </li> 
     </ul> 
    </li> 
</ul> 
+0

嗨ggreiner,感謝你的幫忙,雖然現在還沒有工作,我怎麼需要它,因爲以前,我需要在頁面加載時被強調的第一圖像和放大(addClass ),然後懸停休息,它們被突出顯示並放大,如果沒有圖像,第一個圖像會縮小並突出顯示ges在第一個之上徘徊回到被突出顯示和放大,看網頁例如它是在那個時刻。 http://geoffboult.co.uk/clients/jq/page5.3.html – Geoff 2012-02-01 11:01:02

+0

我修改了答案,以反映你的例子中的html結構 – ggreiner 2012-02-01 16:50:59

+0

非常感謝你的時間,它現在如何需要它。我試圖找到如何向您發送一封郵件,表示感謝,或者看看我下次在鎮上時是否可以向您發送致謝捐款。再次感謝... – Geoff 2012-02-01 21:08:48

相關問題