Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用事件侦听器检测按钮上的单击,然后增加html元素的计数_Javascript_Html - Fatal编程技术网

Javascript 使用事件侦听器检测按钮上的单击,然后增加html元素的计数

Javascript 使用事件侦听器检测按钮上的单击,然后增加html元素的计数,javascript,html,Javascript,Html,我的主要目标是添加此21点游戏的功能,使用事件侦听器显示并增加网页底部的游戏量。我只学了几天JS,也许我选择了一个太难的问题,但我离解决方案太近了。可以肯定的是,我要么缺少所需的一个变量,要么不知道某个函数可以使事情变得更简单 我已经尝试过使用点击功能,我能够成功地制作一个按钮,当点击按钮时,增加了按钮上的数量。我还使按钮和标题具有相同的类名,并且它能够成功地单击按钮来增加数量。但是我相信我缺少了一些基本的东西来连接“debutton”类元素和0以增加其数量 var button=docume

我的主要目标是添加此21点游戏的功能,使用事件侦听器显示并增加网页底部的游戏量。我只学了几天JS,也许我选择了一个太难的问题,但我离解决方案太近了。可以肯定的是,我要么缺少所需的一个变量,要么不知道某个函数可以使事情变得更简单

我已经尝试过使用点击功能,我能够成功地制作一个按钮,当点击按钮时,增加了按钮上的数量。我还使按钮和标题具有相同的类名,并且它能够成功地单击按钮来增加数量。但是我相信我缺少了一些基本的东西来连接“debutton”类元素和
0
以增加其数量

var button=document.getElementsByClassName(“debutton”)
var gamesplayed=document.getElementById(“gamesplayed”)
计数=0;
对于(变量i=0;i

21点
打赌
赌1美元
赌5美元
赌10美元
下注20美元
我的钱 $100 玩过的游戏: 0

顺便说一句,在我看来,如果你总是在debutton上调用deal()函数,你不需要监听事件,那么你可以在那里增加你的count变量。

在我进入解决方案之前,需要两个指针。为了帮助理解解决方案,我将其简化为最简单的形式。这是单击时更新总计数器的按钮。第二,我使用了jQuery,因为它是一个非常有用的工具,可以简化需要完成的工作

<button class="increase" value="10">Add</button>
<div class="total">$<span class="count">0</span></div>

<script>
    var counter = $('.total span.count');
    $(document).ready(function(){
        $(".increase").click(function(){
            currentValue = parseInt(counter.text())
            addValue = parseInt($(this).attr('value'));
            counter.text(currentValue + addValue);
        });
    });
</script>
添加
$0
变量计数器=$('.total span.count');
$(文档).ready(函数(){
$(“.increase”)。单击(函数(){
currentValue=parseInt(counter.text())
addValue=parseInt($(this.attr('value'));
计数器文本(currentValue+addValue);
});
});
在上面,我们有一个保存值的按钮,在本例中为“10”。然后,我们为单击按钮绑定一个侦听事件。单击按钮时,我们从
span.count
元素中提取“value”属性和按钮总值,并在更新文本之前将它们相加

还要注意,我是这样构造的,因此当前符号不在
span.count
元素的范围内,因此我们可以相信该值始终是数值


作为一个重要的提示。我们需要使用
parseInt()
将提取的值转换为整数。否则它们将被用作字符串,
“10”+“10”
将导致
1010
而不是
20

游戏显示。count直接访问无法工作下面的代码可能会有帮助

var count = parseInt(document.getElementById("gamesplayed").innerHTML)
count += 1;
gamesplayed.innerHTML = "" + count;

任何帮助都将不胜感激!非常感谢你!
var count = parseInt(document.getElementById("gamesplayed").innerHTML)
count += 1;
gamesplayed.innerHTML = "" + count;