2014-03-31 20 views
1

我有一個名爲#nav ul li a的導航。在這個列表中,我想將活動類添加到已被點擊的元素。Jquery addClass標記已知工作

這是我的jQuery

$(document).ready(function() {  
$('#nav ul li a').click(function() { 
      $('#nav ul li a').removeClass('active"'); 

      $(this).addClass('active'); 
      return false; 
     }); 
}); 

,這是我的HTML

<header id="header"> 
    <h1 id="logo"><a href="#intro">DerW&auml;schestuhl</a></h1> 
    <nav id="nav"> 
     <ul> 
      <li><a href="#one" class="active" id="uebersicht-btn">&Uuml;bersicht</a></li> 
      <li><a href="#two" class="" id="aussehen-btn">Aussehen</a></li> 
      <li><a href="#work" class="" id="funktionen-btn">Funktionen</a></li> 
      <li><a href="#produktion" class=""id="produktionen-btn">Produktion</a></li> 
      <li><a href="#contact" class="" id="kaufen-btn">Kaufen</a></li> 
     </ul> 
    </nav> 
</header> 

,這裏是我的jsfiddle以顯示樣式表:http://jsfiddle.net/Usgk3/

你們是否有任何想法,爲什麼它沒有工作?我不能發現其中的錯誤

+1

removeClass( '主動「')< - 是錯誤的 - 有一個'」'得多:) –

+0

刪除它,但它仍然沒有工作!對不起 – fjw

+1

它爲我工作。如果您在提供的jsFiddle中檢查它,請不要忘記包含您正在使用的jquery庫,否則'$'對象將無法工作。 – frikinside

回答

1

在你的小提琴是沒有jQuery的鏈接和:

$('#nav ul li a').removeClass('active"'); 

刪除「從(」主動「」)

Working JSFiddle

+0

看到更新的小提琴在這裏:http://jsfiddle.net/Usgk3/7/ –

0

字符串'active"'刪除"

$('#nav ul li a').removeClass('active"'); 

Fiddle。隨着設置: fiddler settins

+1

不,仍然無法正常工作。抱歉 – fjw

+0

添加小提琴鏈接。另請參閱小提琴設置(jQuery添加和onLoad刪除) –

1

嘗試

$(document).ready(function() {  
$('#nav ul li a').click(function(e) { 
    $('.active').removeClass('active'); 

     $(this).addClass('active'); 
     return false; 
    }); 
    }); 

Demo

+0

它不工作.. – fjw

+1

@fjw那麼你想如何的功能?這是正確的。 –

+0

好的,它正在工作。忘了檢查jquery。你知道我怎麼可以添加類到菜單元素沒有點擊它,但通過滾動?它的視差頁面 – fjw

0

你錯過的jQuery在你的提琴演示。

您還需要喲使用:的

$('#nav ul li a').removeClass('active'); 

代替:

$('#nav ul li a').removeClass('active"'); 
// --        ^Remove this 

Updated Fiddle

0

取而代之的是:

$('#導航UL李A ')。removeClass(' 活性'」 );

刪除封閉('active')中的;

這應該是像

$( '#導航UL李一')removeClass( '激活')。

這應該解決問題。

0
  1. 既然你不把jQuery的你撥弄我假設你使用一個新的jQuery版本,所以最好使用.on('click'),不.click()
  2. 保持簡單,與$('#nav a')更換$('#nav ul li a')。根據你的標記,它是完全一樣的東西
  3. 查看更多about .siblings() jquery。

你的工作代碼爲here

+0

謝謝!有用。你知道我如何滾動,當我達到'#work'時,然後將該類添加到菜單中。所以不是通過點擊,而是通過滾動。 – fjw