按动态类对 div 元素进行分组 [英] Group div elements by dynamic class
本文介绍了按动态类对 div 元素进行分组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个 day
动态课程:
a<div class="day day111">a</div><div class="day day112">a</div><div class="day day112">a</div><div class="day day113">a</div>
我正在尝试:
<div class="day day111">a</div><div class="day day111">a</div><div class="group"><div class="day day112">a</div><div class="day day112">a</div>
<div class="group"><div class="day day113">a</div>
我只能在 javascript 中做到这一点.我正在尝试循环,但我无法分组.你能帮助我吗?谢谢!
解决方案
尝试
var groups = {};$('.day').each(function () {var className = this.className.match(/(day\d+)/)[1],$group = 组[className];如果(!$组){$group = $('<div/>', {'类':'组'}).insertAfter(this);组[className] = $group;}$group.append(this);})
演示:小提琴
I have a day
class dynamic:
<div class="day day111">a</div>
<div class="day day111">a</div>
<div class="day day112">a</div>
<div class="day day112">a</div>
<div class="day day113">a</div>
I'm trying to get this:
<div class="group">
<div class="day day111">a</div>
<div class="day day111">a</div>
</div>
<div class="group">
<div class="day day112">a</div>
<div class="day day112">a</div>
</div>
<div class="group">
<div class="day day113">a</div>
</div>
I can only do this in javascript. I'm trying with a loop, but I can not group. Can you help me? Thanks!
解决方案
Try
var groups = {};
$('.day').each(function () {
var className = this.className.match(/(day\d+)/)[1],
$group = groups[className];
if (!$group) {
$group = $('<div />', {
'class': 'group'
}).insertAfter(this);
groups[className] = $group;
}
$group.append(this);
})
Demo: Fiddle
这篇关于按动态类对 div 元素进行分组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文