2017-02-10 60 views
0

背景如何刪除/修改動態創建CSS類在JavaScript

有一些元素,其中CSS動畫需要應用。然而,這些CSS需要隨時生成,因爲需要使用JavaScript代碼進行計算。

This問題闡明瞭如何動態添加CSS。現在的問題是,如何刪除或替換接受的答案後生成的CSS?

只是要清楚,這與從元素中刪除類無關。我需要從頁面中刪除它,以便動畫將從類的元素停止。過了一段時間,我可以改變CSS並重新註冊類,以便以不同的方式爲相關元素製作動畫。

+0

可能有[刪除從JavaScript元素的CSS類(沒有jQuery)](http://stackoverflow.com/questions/2155737/remove-css-class-from-element-with-javascript-no-jquery) – r1verside

+0

不是重複的,這不是關於從元素中刪除CSS,但從頁面中刪除類。 –

+0

然後解釋一下你自己吧,根據4個答案說明如何從元素中移除類,看起來就是你所問的。 – r1verside

回答

0

編輯。

您可以從元素的類列表中刪除

document.getElementById("myelementsid").classList.remove("classname"); 
+0

如果你想在兩個類名之間切換,可以使用'$(#id_name).toggleClass('class_name1 class_name2'); – KiranPurbey

+0

??我正在回答OP的問題,也沒有讓他包含任何額外的東西(比如你正在使用的jQuery)。 – r1verside

+0

感謝您的回答。它從元素中刪除類,我需要從頁面中刪除類(動態添加) –

0

給你完整的文檔使用jQuery做 https://api.jquery.com/removeclass/ 這一點,您可以刪除一個或多個類

+0

感謝您的答案。它從元素中刪除類,我需要從頁面中刪除類(動態添加)。 –

0

的document.getElementById ('someElementId')。className ='';

+0

感謝您的回答。它從元素中刪除類,我需要從頁面中刪除類(動態添加) –

0

如果你想從頁面中刪除特定樣式,你可以像下面的代碼片段:

$('link[title=stylesheettitle]').prop('disabled',true); 

OR

$('link[title="stylesheettitle"]').remove(); 

Java腳本

var style = document.getElementById('styleID'); 
style.parentNode.removeChild(style); 
+0

謝謝,但我不想更改元素,我需要刪除類,停止css動畫,並添加它後具有不同參數的間隔(例如動畫持續時間/沒有像素變換/等等),並且類不在樣式表中,它是動態添加的(請參閱鏈接問題) –

+0

@LowFlyingPelican您嘗試了什麼? –

+0

@LowFlyingPelican這是你在找什麼:http://stackoverflow.com/questions/7125453/modifying-css-class-property-values-on-the-fly-with-javascript-jquery –