0

div の正確な html コンテンツを取得しようとしています。

jQuery から html() 関数を使用すると、結果が実際のコンテンツと一致しません。

このフィドルを確認して、黒い四角をクリックしてください。

http://jsfiddle.net/qRska/6/

コード:

<div id="mydiv" style="width:100px; height: 100px; background-color:#000000; cursor:pointer;">

    <div id="INSIDE" style="background-color:#ffffff; border-style:none;"></div>

</div>

$('#mydiv').click(function() {
    alert($(this).html());
});

jQuery で色を RGB 形式に変更し、border-style 属性を削除します。

どうすればこの問題を解決できますか?

4

2 に答える 2

9

ブラウザは HTML を消費し、DOM を生成してからHTML を破棄しますinnerHTML(.html()最終的にヒットするのはこれです) は、DOM をシリアル化して HTML に戻します。

生の HTML を取得したい場合は、 を使用XMLHttpRequestして現在の URL のソース コードを取得し、それを自分で処理する必要があります。

于 2013-07-15T16:13:49.700 に答える