Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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中单击一次就停止多个输入_Javascript_Typescript - Fatal编程技术网

如何在Javascript中单击一次就停止多个输入

如何在Javascript中单击一次就停止多个输入,javascript,typescript,Javascript,Typescript,我有一个onclick事件,当我单击一个对象时,我注意到如果我使用console.log来检查我是否单击,每次单击都会为一次单击提供大约6个“点击”,如何在第一次单击后停止单击的传播,以便每次单击仅触发一次事件 var that = this; var keys = []; var click = false; var canvas; var mEvent = null; document.addEventListener('mousedown', function (e) {

我有一个onclick事件,当我单击一个对象时,我注意到如果我使用console.log来检查我是否单击,每次单击都会为一次单击提供大约6个“点击”,如何在第一次单击后停止单击的传播,以便每次单击仅触发一次事件

 var that = this; 
 var keys = [];
 var click = false;
 var canvas;
 var mEvent = null;

 document.addEventListener('mousedown', function (e) {
     e.stopPropagation();
     e.preventDefault();
     that.mEvent = e;
     that.click = true;
 });
 document.addEventListener('mouseup', function (e) {
     e.stopPropagation();
     e.preventDefault();
     that.click = false;
 });

 function mousedown() {
     return click;
 }

这不应该发生。确保您没有从函数注册这些事件并多次调用该函数。

mousedown()
?解析错误。我刚刚从我的typescript文件中删除了它,我做了一些更改,希望它是独立的。不可复制。点击其中的任何元素,你每次点击只会得到一次点击。对我来说,相同-表现与预期一样…感谢各位,我将深入查看我的代码,很高兴知道代码工作正常,是其他原因造成的。感谢为我节省了一些工作,我在一个函数中使用了它,但在构造函数中注册了侦听器,但出于某种原因,它仍然被反复调用,我现在直接调用它,现在一切似乎都很好。一个倒下,多个倒下!:D