2015-12-02 214 views
2

我需要當我點擊一個按鈕,從一個導航欄崩潰刪除這個CSS部分CSS部分:如何刪除當按鈕被點擊

ul.nav li.dropdown:hover > ul.dropdown-menu { 
    display: block;  
} 

我想是這樣的:

$("#toggleButton").click(function() 
{ 
    $(".navbar-collapse").remove("ul.nav","li.dropdown","ul.dropdown-menu"); 
}); 

但它不起作用。我想有一個響應式導航欄菜單,當它崩潰時從該視圖中刪除下拉菜單。

+0

要刪除的類或CSS? – Turnip

+0

爲什麼你需要刪除顯示塊?你想隱藏這些元素嗎?如果是這樣,你可以使用.hide() – spaniol6

+0

你不能真正刪除的CSS部分,以及,你可以,但這可能不是你想要的,你想刪除類,或應用新的樣式,覆蓋舊的那些。 – adeneo

回答

1

你只需要剛纔設置的CSS屬性displaynone施加到ul元素.dropdown-menu類。

ul.nav li.dropdown:hover這裏沒有任何相關性,因爲它們被用作元素定位符並且沒有display:none應用於它們。

$("#toggleButton").click(function() 
{ 
    $('ul.dropdown-menu').css('display','none'); 
}); 

要刪除整個CSS屬性,

$("#toggleButton").click(function() 
{ 
    $('ul.dropdown-menu').removeAttr('style'); 
}); 
2

你試過removeClass了嗎?

$(".navbar-collapse").removeClass("nav dropdown dropdown-menu"); 

如果你想從DOM

$(".nav, .dropdown, .dropdown-menu").remove(); 
+0

當我調整窗口大小時,我用一個按鈕做出了一個啓動菜單響應。當我顯示該菜單時,我想隱藏下拉菜單,但在全屏返回時保留屬性。 – dimvcl

+0

查看http://api.jquery.com/hide/和http://api.jquery.com/show/ – Andy

0

刪除元素有不止一種方法來做到這一點,但你可以通過更改CSS當你點擊按鈕

做以下是你將如何實現的:

$("#toggleButton").click(function() 
{ 
    $("ul.nav li.dropdown:hover > ul.dropdown-menu").css({"display": "none"}); 
}); 
0

試試這個:

$("#toggleButton").click(function(){ 
    $(".navbar-collapse").remove("ul.nav li.dropdown > ul.dropdown-menu"); 
});