回答編集履歴
1
ul 追加
answer
CHANGED
@@ -33,4 +33,36 @@
|
|
33
33
|
});
|
34
34
|
</script>
|
35
35
|
|
36
|
+
```
|
37
|
+
|
38
|
+
--- 追記 ul li 対応
|
39
|
+
```js
|
40
|
+
<script type="text/javascript">
|
41
|
+
$(function() {
|
42
|
+
var $childs = $('.hoge1_parent').children();
|
43
|
+
// クラスの重複数記録
|
44
|
+
var indexes = {};
|
45
|
+
var $dl = $('<ul/>').attr('class', 'hoge2_parent');
|
46
|
+
var $li_tmp = $('<li><dl><dt><a href="#"></a></dt><dd></dd></dl></li>')
|
47
|
+
$childs.each(function() {
|
48
|
+
var className = $(this).attr('class');
|
49
|
+
if (!(className in indexes)) {
|
50
|
+
indexes[className] = 0;
|
51
|
+
}
|
52
|
+
// クラスの重複をカウント
|
53
|
+
var i = indexes[className] += 1;
|
54
|
+
// id 付与
|
55
|
+
var idName = className + '_' + i;
|
56
|
+
$(this).attr('id', idName);
|
57
|
+
// dt, dd 要素作成
|
58
|
+
var info1 = $(this).find('.info1').html();
|
59
|
+
var info2 = $(this).find('.info2').html();
|
60
|
+
$li = $li_tmp.clone();
|
61
|
+
$li.find('a').html(info1).attr('href', '#' + idName);
|
62
|
+
$li.find('dd').html(info2);
|
63
|
+
$dl.append($li);
|
64
|
+
});
|
65
|
+
$('.hoge1_parent').after($dl);
|
66
|
+
});
|
67
|
+
</script>
|
36
68
|
```
|