2

要素の生の HTML を取得することは可能ですか、それとも「スタイル」属性なしで HTML を取得することは可能ですか? 次の例を考えてみましょう。

<div class="outer">
   <div class="inner">
       some text
   </div>
</div>

ここで、アニメーション/CSS を「内部」要素に適用します。

​$('.inner').animate({
    'margin': '-10px'
});​​

を使用して「外側」要素の HTML をconsole.log($('.outer').html());取得すると、次のようになります。

<div class="inner" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">
       some text
   </div>

しかし、私は実際にこれだけが必要です

<div class="inner">
       some text
   </div>

その出力を取得する最も簡単な方法は何ですか?? animate() または css() を適用する前に要素のバックアップを作成する必要はありません。

ありがとうございました。

4

1 に答える 1

4

style 属性を完全に削除したい (そして元に戻したくない) 場合は、次のコードを使用します。

/* Working code */ 
$(".outer").find(".inner").removeAttr('style').end().html();

/* Explanation of working code */
$(".outer")                     // Get the outer element
           .find(".inner")      // Find the inner div
           .removeAttr('style') // Remove the attribute from the inner div
           .end()               // Return to the outer div
           .html();             // Get outer div's HTML

これが実用的なフィドルです。

jQuery ドキュメント:

于 2012-04-20T18:56:57.507 に答える