Javascript 增加鼠标单击函数内的数字
我有一个代码,当使用Javascript 增加鼠标单击函数内的数字,javascript,Javascript,我有一个代码,当使用mouseClicked=function(){}单击鼠标时,我会绘制一个对象,然后我需要一个数字来显示已经绘制了多少个对象。问题是这个数字不会增加。我该怎么办?如果count变量是在mouseClicked函数中定义的,就像标题所说的那样,那么在每个mouseClick中都会重新创建它。在这种情况下,您应该使用value=0在函数外定义它,并在函数内将1和该值相加。无论如何,正如评论所说,您有必要将代码包含到问题中,以给出更好的答案。如果count变量如标题所示定义在mou
mouseClicked=function(){}
单击鼠标时,我会绘制一个对象,然后我需要一个数字来显示已经绘制了多少个对象。问题是这个数字不会增加。我该怎么办?如果count变量是在mouseClicked函数中定义的,就像标题所说的那样,那么在每个mouseClick中都会重新创建它。在这种情况下,您应该使用value=0在函数外定义它,并在函数内将1和该值相加。无论如何,正如评论所说,您有必要将代码包含到问题中,以给出更好的答案。如果count变量如标题所示定义在mouseClick函数中,则您将在每次mouseClick中重新创建它。在这种情况下,您应该使用value=0在函数外定义它,并在函数内将1和该值相加。无论如何,正如评论所说,你有必要在问题中加入代码,以便给出更好的答案。下面是一个简单的例子,可以让你了解如何增加计数器
var res=document.getElementById(“res”)
var btn=document.getElementById(“btn”)
变量计数=1
btn.addEventListener(“单击”,()=>{
res.textContent=计数
计数++
})
Draw
下面是一个简单的示例,可以让您了解如何递增计数器
var res=document.getElementById(“res”)
var btn=document.getElementById(“btn”)
变量计数=1
btn.addEventListener(“单击”,()=>{
res.textContent=计数
计数++
})
绘制
这是一种简单的方法,可以阻止对html文档的点击
let计数器=0;
document.onclick=()=>{
计数器++;
控制台日志(计数器);
}
这是一种简单的方法,可以阻止对html文档的点击
let计数器=0;
document.onclick=()=>{
计数器++;
控制台日志(计数器);
}
而不是声明和递增全局变量-您可以在按钮上将计数设置为HTML 5数据属性,然后单击按钮,获取数据属性值,递增并更新显示和按钮上的新计数
请注意,数据属性始终是字符串-因此需要parseInt()方法,尽管如果我是一个纯粹主义者-我也会将基数放入,但默认为10-因此在本例中不需要
在可能的情况下最好避免使用全局变量,数据属性提供了一种非常方便的存储本地数据的方法
感谢@Sven.hig提供解决方案的骨架代码,然后我将其修改为我的方法
var res=document.getElementById(“res”)
var btn=document.getElementById(“btn”)
btn.addEventListener(“单击”,()=>{
const newCount=parseInt(btn.getAttribute('data-count'))+1;
res.textContent=newCount;
btn.setAttribute('data-count',newCount)
})
绘制
而不是声明和递增全局变量-您可以在按钮上将计数设置为HTML 5数据属性,然后单击按钮,获取数据属性值,递增并更新显示和按钮上的新计数
请注意,数据属性始终是字符串-因此需要parseInt()方法,尽管如果我是一个纯粹主义者-我也会将基数放入,但默认为10-因此在本例中不需要
在可能的情况下最好避免使用全局变量,数据属性提供了一种非常方便的存储本地数据的方法
感谢@Sven.hig提供解决方案的骨架代码,然后我将其修改为我的方法
var res=document.getElementById(“res”)
var btn=document.getElementById(“btn”)
btn.addEventListener(“单击”,()=>{
const newCount=parseInt(btn.getAttribute('data-count'))+1;
res.textContent=newCount;
btn.setAttribute('data-count',newCount)
})
绘制
你的代码在哪里?嗨,安娜,欢迎来到SO。为了真正理解您的问题,这意味着您需要将您引用的代码包含到代码块、代码段或(但不太可取)fiddle/bin/pen中。有关更多信息,请查看“帮助”部分。这将增加您的问题获得高质量帮助的机会。您的代码在哪里?嗨,Anna,欢迎来到SO。为了真正理解您的问题,这意味着您需要将您引用的代码包含到代码块、代码段或(但不太可取)fiddle/bin/pen中。有关更多信息,请查看“帮助”部分。这将增加您获得高质量问题帮助的机会。您可以将parseInt
替换为+
。感谢@GirkovArpa-宁愿使用parseInt()而不是从字符串到数字的类型转换。但是很高兴知道-谢谢你可以用+
替换parseInt
。谢谢@GirkovArpa-宁愿用parseInt()来代替,也不愿用字符串到数字的类型转换。但很高兴知道-干杯