首先,我使用Plate CMS(在shopify液体上运行),它创建的sections
可以在上图中看到。
现在我正在为一个小问题而苦苦挣扎。我想循环所有6个部分,但其中只有4个部分放置在div内,而其他2个(页眉和页脚)则称为tray's
,这意味着会有一点差异,因此不会放在其中div。
我知道我可以使用如下方式遍历4个部分:
$('#mydiv > section').each(function () { /* ... */ });
但是问题是我无法以这种方式选择页眉和页脚。
然后我在其上方的div上循环,将循环<div data-id="post_15757">
而不是其中的各个部分。
我如何使用这样的循环:$('#mydiv > section').each(function () { /* ... */ });
,还要添加页眉和页脚?
答案 0 :(得分:1)
您可以使用jQuery add
let $div = $('#mydiv");
$('> section',$div).add($div.prev()).add($div.next())
或按顺序:
let $sections = $('section').first(), $div = $sections.next();
$sections.add($('> section',$div).add($div.next())
或者也许是
const $sections = $('section');
答案 1 :(得分:1)
您还可以选择数据属性:
var sections = $('[data-plate-object="section"]');
$.each(sections, function(idx, val){
// apply logic
});
几乎可以肯定,将选择CMS创建的部分,而不是集成中的HTML部分。