javascript - jQuery单击将元素附加到一系列div
问题描述
我有以下代码:
$('button').click(function(e) {
e.preventDefault();
var count = 0;
if (count < 5) {
$(".container .column:nth-child(1)").append('<div class="element"></div>');
count++;
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button type="button">Add</button>
<div class="container">
<div class="column"></div>
<div class="column"></div>
<div class="column"></div>
<div class="column"></div>
</div>
当我单击按钮时,我想在每列中最多添加 4 个元素,一个接一个。例如,如果我单击按钮 6 次,HTML 将如下所示:
<div class="container">
<div class="column">
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
</div>
<div class="column">
<div class="element"></div>
<div class="element"></div>
</div>
<div class="column"></div>
<div class="column"></div>
</div>
element
每次我单击一个按钮时,第一列都会增加 1个 div,element
限制为 4 个 div。
我怎样才能对下一列做同样的事情?
奖金问题
单击按钮删除元素时是否也可以做相反的事情?
解决方案
您可以通过使用属性检查其中的s来定位column
div 。element
length
此外,您不需要:nth-child(1)
财产。
$('.add').click(function(e) {
e.preventDefault();
var count = 0;
if (count < 5) {
$(".container .column").filter(function() {
return $(this).children('.element').length < 4;
}).first()
.append('<div class="element">e</div>');
count++;
}
});
$('.remove').click(function(e) {
e.preventDefault();
$(".container .column .element:last").remove();
});
.column {
border: 1px solid red;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button type="button" class="add">Add</button>
<button type="button" class="remove">Remove</button>
<div class="container">
<div class="column"></div>
<div class="column"></div>
<div class="column"></div>
<div class="column"></div>
</div>
参考:
推荐阅读
- php - 如何在 Wordpress 的另一个函数和插件中访问变量
- javascript - 为什么第二个反向引用不起作用?
- sql - 一般错误;383 无效标识符:RESB:内部连接
- algolia - 如何在分层菜单中显示不同的计数?
- r - 正则表达式从列表中查找单词,当特定单词之前没有出现 3 个单词时
- r - 按时间段绘制 R 中的唯一组
- html - 如何仅使用 CSS 创建带正方形的网格,同时尊重最大宽度和高度?
- arangodb - 使用 ArangoDB java 驱动程序批量导入图形数据
- java - Java 流映射中可重用的单实例包装器/对象
- mysql - MySQL:为什么我会得到“错误代码:1054。'字段列表'中的未知列'SLI_nuevo.id_oc'?