1

使用分页,我在第一页有一个像这样的 div 结构:

<div class="ctema">...</div>
<hr />
<div class="ctema">...</div>
<hr />
<div class="ctema">...</div>
<hr />

但是使用 jquery 脚本通过 AJAX 获取内容......以下页面只有:

<div class="ctema">...</div>
<div class="ctema">...</div>
<div class="ctema">...</div>

我的目标是在每个带有 class="ctema" 的 div 之间有一个 HR 标签......我试过这个:

$('.ctematicas').before('<hr />');

但这不会检查 HR 标签是否已经存在,并且在第一页中进行 5 次动态重新加载后,我最终会连续获得 5 HR ...

如何检查 CTEMA 类之间是否存在 HR 标签,如果不存在则添加一个?

编辑:问题澄清。

4

2 回答 2

3

你可以做

$('.ctema').not('hr+.ctema').before('<hr />');

或者

$('.ctema:not(hr+.ctema)').before('<hr />');

jQuery的文档建议​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

示范


如果您真正想要的是在 div之间有一个小时(而不是在第一个之前),那么解决方案就更简单了:

$('.ctema+.ctema').before('<hr />');​

示范

于 2012-10-25T10:26:06.043 回答
1

如何检查 CTEMA 类之间是否存在 HR 标签,如果不存在则添加一个?

不知道我明白了,但我可能会这样做:

$('.ctema').filter(function() {
    return !$(this).next('hr').length
}).after('<hr>');

小提琴

于 2012-10-25T10:46:28.347 回答