0

each() 関数に問題があります。私が好きなのは、false を返すことです。そして、再び起動します。each() 関数が最初のリンクのみを繰り返していることがわかります。各リンクで各 $('.ms-PostTitle a') を複製したいと思います...私のコードを参照してください。助けてください!

========HTML======= each() 関数が現在行っていること :( ....

<div class="ms-PostTitle"> 
    <a href="Post.aspx?ID=1">Post #1</a>
</div>
<a href="Post.aspx?ID=1" class="read-more">Read More</a>

<div class="ms-PostTitle"> 
    <a href="Post.aspx?ID=2">Post #2</a>
</div>
<a href="Post.aspx?ID=1" class="read-more">Read More</a>

========HTML======= 私も好きなものだなぁ....

<div class="ms-PostTitle"> 
    <a href="Post.aspx?ID=1">Post #1</a>
</div>
<a href="Post.aspx?ID=1" class="read-more">Read More</a>

<div class="ms-PostTitle"> 
    <a href="Post.aspx?ID=2">Post #2</a>
</div>
<a href="Post.aspx?ID=2" class="read-more">Read More</a>

========jQuery=======

    $('.ms-PostTitle a').each(function () {
       var href = $(this).attr('href');         
       $('<a class="read-more" href=' + href + '>Read More</a>').insertAfter('div.ms-PostBody p');
       return false;
});
4

1 に答える 1

3

これはうまくいくはずです

$('.ms-PostTitle a').each(function () { 
   $('<a>', { text: "Read More", class: "read-more", href: this.href }).insertAfter($(this).parent());
});

http://jsfiddle.net/RLa5C/1/

于 2012-05-01T13:09:22.093 に答える