1

ここでは、JS を使用して新しいドキュメントを作成しようとしています。

  objDoc.open();
  objDoc.write( "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">" );
  objDoc.write( "<html>" );
  objDoc.write( "<body>" );
  objDoc.write( "<head>" );
  objDoc.write( "<title>" );
  objDoc.write( document.title );
  objDoc.write( "</title>" );
  objDoc.write( jStyleDiv.html() );
  objDoc.write( "</head>" );
  objDoc.write( this.html() );
  objDoc.write( "</body>" );
  objDoc.write( "</html>" );
  objDoc.close();

ドキュメントを閉じる前に (おそらくメモリ内にある別のドキュメントの html を新しいドキュメントの本文に書き込んだ後)、特定のクラスや ID に一致する要素を削除したいと考えています。jQuery ソリューションは問題ありません。これを行う方法はありますか?

ありがとう!

4

2 に答える 2

1

AresAvatarが提案している解決策は、あなたが言及した問題を解決する1つの追加で正しいです:実行するjQueryコマンドは

$(".myclass", objDoc).remove();

jQuery の 2 番目のパラメーターは、コマンドが実行されるコンテキストです。この方法では、ページ全体には適用されません! jQueryのドキュメントから以下のURLを参照してください。

api.jquery.com/jQuery/

パン

于 2012-08-23T20:44:22.357 に答える
1

jQuery のremove関数を使用します。

$(".myclass").remove();

また

$("#myID").remove();


編集: これは CSS を変更しません。「.myclass」などの CSS に似た表記法は、ノードを選択するための jQuery メソッドであり、css に似た表記法を使用して、プログラマーが DOM ノードを選択するおなじみの方法を使用できるようにします。remove() API は、一致するすべてのノードを DOM から削除します。たとえば、 $(".myclass").remove() を実行すると、次のようになります。

$(".myclass").remove() の実行前

<html>
    <head>
        <style type="text/css">
            .myclass {
                border: 1px solid black;
            }
        </style>
    </head>
    <body>
        <p class="myclass">Paragraph one</p>
        <p>Paragraph two</p>
    </body>
</html>

$(".myclass").remove() の実行後

<html>
    <head>
        <style type="text/css">
            .myclass {
                border: 1px solid black;
            }
        </style>
    </head>
    <body>
        <p>Paragraph two</p>
    </body>
</html>
于 2012-08-23T00:08:10.177 に答える