2013-07-18 285 views
-5

問題是我使用的代碼只是刪除「.now」類。我想通過單擊錨標籤將「.year_line」類hav替換爲「.now」類。Jquery幫助需要

   <div class="tym_line"> 
       <ul> 
       <li class="now"><a href="#">Now</a></li> 
       <li class="year_line"><a href="#">2013</a></li> 
       <li class="year_line"><a href="#">2012</a></li> 
       <li class="year_line"><a href="#">2011</a></li> 
       <li class="year_line"><a href="#">2010</a></li> 
       <li class="year_line"><a href="#">2009</a></li> 
       <li class="year_line"><a href="#">2008</a></li> 
       <li class="year_line"><a href="#">2007</a></li> 
       <li class="year_line"><a href="#">2006</a></li> 
       <li class="year_line"><a href="#">2005</a></li> 
       <li class="year_line"><a href="#">2004</a></li> 
       <li class="year_line"><a href="#">2003</a></li> 
       <li class="year_line"><a href="#">2002</a></li> 
       <li class="year_line"><a href="#">2001</a></li> 
       <li class="year_line"><a href="#">Born</a></li> 

       </ul> 
      </div>     


     JQuery code: 


      $('.tym_line').on('click', 'li', function() { 
      $(this) 
     .removeClass('year_line')  
       .addClass('now') 
     .removeClass('now')   
       .addClass('year_line'); 

      return false; 
      }); 
+0

請你的問題描述清楚,還請確保您發佈的東西你試過。你不是很着急嗎? – vee

+0

是我已經嘗試,但它只得到部分正確,但有一個問題... – user1213684

+0

你應該發佈你試過的代碼,並解釋你的代碼有什麼問題,而不是要求寫一個完整的解決方案/從頭開始爲您提供。 –

回答

0
$('.tym_line').on('click', 'li', function() { 
    $(this) 
     .removeClass('year_line') 
     .addClass('now') 
     .siblings() 
      .removeClass('now') 
      .addClass('year_line'); 

    return false; 
}); 

http://jsfiddle.net/3Ny4y/10/

雖然可以 '廢除' 類year_line,你可以簡單地使用CSS選擇器

.tym_line li 

.tym_line li:not(.now) 

在這種情況下,你可以在JS代碼片段減少:

$('.tym_line').on('click', 'li', function() { 
    $(this) 
     .addClass('now') 
     .siblings() 
      .removeClass('now'); 

    return false; 
}); 
+0

感謝人們的生活節省....... – user1213684

+0

@ user1213684請停止使用「大寫」它傷害眼睛.. –