1

我正在用 jQuery 编写 Greasemonkey 用户脚本。该代码段影响论坛主题页面,并打算在每个帖子的页脚附加一个按钮。

假设按钮已经是一个 jQuery 元素$button,这是我的代码:

$('table.posts').each(function() {
    //get the name of the poster
    profileName = $(this).find('.user').text();
    //change the link relative to each poster
    $button.attr('href', '/search?user=' + profileName);
    //This is the problematic line:
    $(this).find('div.postFooter').append($button); 
});

我已经测试了profileName使用警报的价值,它成功地迭代并提醒配置文件名称,但它只将按钮附加到最后一篇文章的页脚(带有正确的链接)。

我尝试使用各种不同的选择器和方法来遍历 DOM 到所需的元素,但所有方法都产生了相同的结果。我没主意了。

4

1 回答 1

3

使用克隆

$(this).find('div.postFooter').append($button.clone(true)); 

每次您更改和附加相同的 $button元素时。

于 2012-06-09T13:00:35.020 回答