我还在学习,所以我在绞尽脑汁。
$('.post-outer .post-footer .post-footer-line.post-footer-line-2 .post-labels a').each(function(index, el) {
$('.post-outer').attr('itemtype', $(this).attr('href') );
});
当你在上面运行JS时,它只需要在其他“DIV”中重复第一个“href”。发生了什么:
<div class="post-outer" id="001" itemtype="url1">test1</div>
<div class="post-outer" id="002" itemtype="url1">test2</div>
<div class="post-outer" id="003" itemtype="url1">test3</div>
我想要发生这件事:
<div class="post-outer" id="001" itemtype="url1">test1</div>
<div class="post-outer" id="002" itemtype="url2">test2</div>
<div class="post-outer" id="003" itemtype="url3">test3</div>
在示例中,它只占用最后一个div并在其他div中重复 https://jsfiddle.net/mpb9wfmc/
答案 0 :(得分:1)
使用.each
可以使用this
来迭代当前元素:
$(this).attr('itemtype', newValueHere );
执行$('.post-outer').attr('itemtype', $(this).attr('href') );
会将其应用于课程post-outer
的所有项目。