jQueryでCSSを変更しているのですが、入力値に応じて追加しているスタイリングを削除したいのです。
if(color != '000000') $("body").css("background-color", color); else // remove style ?
どのようにすればよいでしょうか?上の行は、カラーピッカーで色が選択されるたびに実行されることに注意してください(つまり、マウスがカラーホイールの上に移動したとき)。
2つ目の注意点は、css("background-color", "none")
ではできないということです。jQueryによって追加されたインラインスタイルのbackground-color
を削除したいだけです。
The accepted answer は動作しますが、私のテストではDOM上に空の style
属性が残ります。大したことではありませんが、これはすべてを取り除きます。
removeAttr( 'style' );
これは、すべての動的スタイリングを削除して、スタイルシートのスタイリングに戻したいことを想定しています。
ピュアなJavaScriptでスタイル属性を削除する方法を手に入れました ピュアなJavaScriptの方法を知ってもらうために
var bodyStyle = document.body.style;
if (bodyStyle.removeAttribute)
bodyStyle.removeAttribute('background-color');
else
bodyStyle.removeProperty('background-color');