2017-01-02 72 views
0

我仍然是大學的學生,也是jQuery的新手。我想知道如何刪除這些喜歡使用jQuery CSS類:使用jquery刪除多個CSS類

.starrate span:hover:before,.starrate span:hover ~ span:before { 
    content: "\2605"; 
    position: absolute; 
    color: orange; 
    cursor: pointer; 
} 

我嘗試這樣做:

$('#s10').on("click", function() { 
    var val = $(this).data("values5"); 

    $("#s10").html("<span>&bigstar;</span>"); 
    $("#s10").addClass("newstarrate"); 
    $("#s10").removeClass("starrate span:hover:before,.starrate span:hover ~ span:before"); 
}); 

但它不工作。我怎樣才能刪除這些類?

+0

會發生什麼情況?請參閱[mcve] –

回答

1

這將刪除您剛纔添加的類:

$("#s10").removeClass("newstarrrate") 

不能更改CSS定義,如果它是你的目的。

+0

感謝您的評論。 –

+0

你想刪除什麼課程? –

+0

我想刪除我想刪除此類.starrate span:hover:之前,.starrate span:hover〜span:之前{ 內容:「\ 2605」; position:absolute; 顏色:橙色;光標:指針; } –

0

從你的例子看,你試圖讓事情變得複雜。

涉及的唯一實際類是直接位於'。'之後的任何文本。直到第一個空間。整個事情是一個CSS選擇器,而不是一個類。在你的例子中,上面CSS選擇器中唯一的類是'.starrate'。

由於CSS的特殊性(DOM元素的樹狀特性和應用CSS的方式),如果您取出「父」類,子類將不會受到所列樣式的影響,因此以下應該刪除CSS樣式:

$("#s10").removeClass("starrate"); 
+0

它不工作 –

+0

你可以設置一個JSFiddle嗎?或者等價的,所以我們可以看到你的代碼「在行動」,可能會有另一個問題 –