javascript - jQuery - 设置附加数量限制

标签 javascript jquery

我是一名初学者,正在从事一个个人项目,我正在尝试为名为“Cricket”的飞镖游戏制作一个计数系统。

请访问下面我的代码:

https://codepen.io/benszucs/pen/ZXdGxe

jquery:

$(document).ready(function() {
  $('h1').click(function(){
    var mark = $("<h1 class='mark'>I</h1>");
    if ($(".mark").length >= 3) return;
    $(this).closest('.count').append(mark);
  });
});

对于每个数字,玩家最多可以得分 3 分(线)。我设法对可以附加的行数设置限制,但这适用于整个应用程序。

我想要的是能够为每个玩家的每个数字(15 -> Bull)最多标记三行。

我是否缺少一个简单的解决方案,或者我是否以错误的方式处理问题?

谢谢

最佳答案

您正在使用 mark 类对元素进行计数。所以当你达到3个元素时,无论是哪个分数,你都无法再添加分数。

解决此问题的方法是从您单击的元素中计算 mark 元素,例如:

if ($(this).parent().children().length >= 4) return;

在此代码中,您将计算您单击的分数元素的父元素中的子元素(h1 元素)的数量。

关于javascript - jQuery - 设置附加数量限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46999339/

相关文章:

javascript - moment.js 中有条件格式吗?

javascript - Script# 的成熟度(与 GWT 相比)

javascript - 逐步切换视频音频静音/取消静音

javascript - 来自 JavaScript 文件的 PseudoClass 实现...当被指针事件属性阻止时

jquery - 如何限制 jQuery 自动完成结果的数量?

jquery - 带有多个选择的 web.py Json

javascript - jQuery ajax成功回调函数定义

javascript - 如何捕获和解析从 Google Maps v3 API 返回的 JSON?

javascript - 根据 jQuery 中多个实例的另一个元素高度设置高度

javascript - 将鼠标悬停在元素中包含的子输入文本字段上时,该元素触发mouseout或mouseleave事件