我有一个看起来像这样的页面:
<div class="post">
<h1>Foo Bar</h1>
</div>
我想通过javascript添加帖子号码。
<div class="post">
<h1>1. Foo</h1>
</div>
<div class="post">
<h1>2. Bar</h1>
</div>
我想用jQuery做这个,我想我可以遍历每个帖子,只需使用prepend添加一个计数,做这样的事情:
$('.post h1').each( function(num) {
this.prepend(num+' .');
});
我得到的错误是:
**Object #<HTMLHeadingElement> has no method 'prepend'**
我想知道是否有人可以查看代码并告诉我哪里出错了?
答案 0 :(得分:3)
在回调中,this
是一个DOM元素,而不是一个jQuery对象。
请注意,索引是基于零的,因此您应该为其添加一个:
$('.post h1').each( function(num) {
$(this).prepend((num + 1) + ' .');
});
答案 1 :(得分:0)
您需要做的就是使用this
上的jQuery运算符:
$(this).prepend(num+' .');