jqueryを使用してdivにスタイル属性を追加および削除する


103

自分が取り組んでいるプロジェクトを継承し、いくつかのjqueryアニメーションを更新しています(jqueryの練習はほとんどありません)。

スタイル属性を追加および削除する必要があるdivがあります。ここにdivがあります:

<div id='voltaic_holder'>

アニメーションのある時点で、それにスタイルを追加する必要があります。

<div id='voltaic_holder' style='position:absolute;top:-75px'>

私は周りを検索して.removeAttr()メソッドを見つけましたが、それを追加する方法、またはそのリモート部分(top:-75pxのみなど)さえもわかりません。

おかげで、


$('voltaic_holder').style = nullたぶん?スタイルには、独自のオブジェクトツリー全体があります。他のほとんどの属性は、単にkey = valueタイプのデータです。
Marc B

回答:


246

次のいずれかを実行できます

各スタイルプロパティを個別に設定します。

$("#voltaic_holder").css("position", "relative");

複数のスタイルプロパティを一度に設定します。

$("#voltaic_holder").css({"position":"relative", "top":"-75px"});

特定のスタイルを削除します。

$("#voltaic_holder").css({"top": ""});
// or
$("#voltaic_holder").css("top", "");

スタイル属性全体を削除します。

$("#voltaic_holder").removeAttr("style")

1行に複数のcssプロパティを追加できますか?:または私はそうのような各スタイルプロパティのいずれかを実行しなければならないの $("#voltaic_holder").css("position", "relative"); $("#voltaic_holder").css("top", "-75");
ItsPronounced

3
それに答えるために、はい、できます。.css()関数でオブジェクトリテラルを使用するだけです。$( 'foo')。css({'height': '30px'、 'width': '50px'});
Richard Neil Ilagan

@AdamAlbrecht $( "#voltaic_holder")。removeAttr( "style")では、デフォルトで新しく追加された適用済みのスタイルがすべて削除されるため、追加した特定のスタイルを削除するにはどうすればよいですか。
3つのルール

21

voltaic_holderスパンのスタイル属性を完全に削除するには、次のようにします。

$("#voltaic_holder").removeAttr("style");

属性を追加するには、次のようにします。

$("#voltaic_holder").attr("attribute you want to add", "value you want to assign to attribute");

トップスタイルのみを削除するには、次の操作を行います。

$("#voltaic_holder").css("top", "");

15

jQueryを使用している場合は、CSSを使用してCSSを追加します

$("#voltaic_holder").css({'position': 'absolute',
    'top': '-75px'});

CSS属性を削除するには

$("#voltaic_holder").css({'position': '',
    'top': ''});

voltaic_holder要素にはthos属性がないため、positionまたはtop属性を削除できません。これらは、style属性で定義されたcssプロパティです。
Peter Olson

@ピーター-ドー!編集して使用.css
justkt



2

!importantの jQuery の.cssメソッドの場合ルールは適用されません。

この場合、.attr関数を使用する必要があります。

例:以下のようにスタイルを追加したい場合:

<div id='voltaic_holder' style='position:absolute;top:-75px !important'>

あなたは使うべきです:

$("#voltaic_holder").attr("style", "position:absolute;top:-75px !important");

それが誰かを助けることを願っています。


1

Jクエリを使用してdivからスタイル属性を削除します。

$("#TableDiv").removeAttr("style");

Jクエリを使用してdivにスタイルを追加します。

$("#TableDiv").attr("style", "display: none;");

HTMLを使用してスタイルを追加します。

<div class="row" id="TableDiv" style="display: none;">
</div>

それが役に立てば幸い:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.