0

実際のクローンを作成して、Webページに要素を追加する必要があります。

console.log(($this)); 

このようなものを与えます:

<div id="id" class="class" style="style">
<p style="style">World</p>
</div>

「World」の前に、まったく同じ構造の「Hello」という単語を追加したい

attr()またはhtml()で試しましたが、すべての属性を置き換えます。

4

5 に答える 5

2

ワンライナーftw:

$("#id > p").prepend("Hello ");
于 2012-07-27T15:20:09.840 に答える
1
var currentcontent=$("#id").find("p").text();
$("#id").find("p").text("Hello"+currentcontent);

これは、その特定のID(Id]が一意である1つのDIVに対してのみ実行されます)

サンプル: http: //jsfiddle.net/trdxg/2/

同じ構造を持つn個の要素に対してこれを実行する場合は、jQueryセレクターを変更して。を使用できますclass

$(function(){
    $("div.class").each(function(index,item){
       var item=$(this);
        var currentcontent=item.find("p").text();
        item.find("p").text("Hello"+currentcontent); 

    }); 
});​

サンプル: http: //jsfiddle.net/trdxg/7/

于 2012-07-27T15:18:06.670 に答える
1

あなたは「実際のクローンを作成したい」と言っています。$thisクローンの内容を複製および変更する方法は次のとおりです。

var $clone = $this.clone();
$clone.find('p').text(function(i, oldText){
    return "Hello " + oldText;
});
$clone.appendTo('#someContainer'); // now put the copy somewhere else

編集:クローンを作成するときは、同じIDを持つ複数の要素を使用したくないことに注意してください。例のためにそこに入れたように見えますid="id"が、それでも指摘する価値があります。

于 2012-07-27T15:18:59.493 に答える
1
$('#id > p').text(function(i,oldValue){
    return "Hello " + oldValue;
});
于 2012-07-27T15:19:07.763 に答える
1
var $hello = $(("#id > p")).clone();
$hello.text("Hello");
$hello.prependTo($("#id"));

http://jsfiddle.net/VmAPr/

もちろん、必要に応じて:firstまたは:first-childセレクターを使用して、中間結果を変数または1行のすべてに割り当てることができます)

于 2012-07-27T15:30:34.623 に答える