Javascript 在同一dropspot中放置变量时,如何停止增加变量

Javascript 在同一dropspot中放置变量时,如何停止增加变量,javascript,jquery,Javascript,Jquery,我有7个下降点和7个可拖动元素。我可以对所有7个dropspot使用相同的元素,也可以在同一dropspot上使用所有可拖动的元素。我有一个变量contor,在drop处递增,但是,如果我把所有元素拖到同一个dropspot上,这个变量达到7,就会发生一些事情。我需要的是每个dropspot只增加一次变量,即使我在同一dropspot中删除并更改src 7次。我的代码如下所示: 你真的需要阅读。。。你的代码中有这么多错误的东西 1-不选择ID为的组: ObjectsToHide.push(do

我有7个下降点和7个可拖动元素。我可以对所有7个dropspot使用相同的元素,也可以在同一dropspot上使用所有可拖动的元素。我有一个变量contor,在drop处递增,但是,如果我把所有元素拖到同一个dropspot上,这个变量达到7,就会发生一些事情。我需要的是每个dropspot只增加一次变量,即使我在同一dropspot中删除并更改src 7次。我的代码如下所示:

你真的需要阅读。。。你的代码中有这么多错误的东西

1-不选择ID为的组:

ObjectsToHide.push(document.getElementById("toChange" + i));
而是使用一个类来选择多个元素

ObjectsToHide = $('.class');
2-不保存索引:

indexDrags = dragObjects.indexOf(event.currentTarget);
而是将元素本身保存在var中,这样就不必再次选择它

dragsEl = event.currentTarget;
3-不要重复查询:

$("#dropspot" + indexDrops).css("opacity", 0);
$("#dropspot" + indexDrops).children("img").prop('src', dragTarget.src);
而是将查询保存在一个var中,然后重用它或只是将其链接起来

var q = $("#dropspot" + indexDrops)
.css("opacity", 0).children("img")
.prop('src', dragTarget.src);
4-如果您只需要一个操作计时器,请使用setTimeout。除非希望重复执行操作,否则不要使用setInterval

5-创建小提琴时,您需要参考您的库。在您的例子中:jquery和jqueryUI

  • 阅读更多
6-您需要绝对引用图像,否则将无法加载图像:

src="images/clouds.svg" 
反而

src="http://your.site/images/clouds.svg" 

你说得对,我是乞丐:(但我面临的问题仍然没有解决…我需要contor为每个dropspot增加一次时间,即使dropspot仍然处于活动状态,并且我删除了另一个元素是的,正在工作,但即使我再次拖动同一dropspot中的元素,它也会增加…检查ur jsbin,并发出contor警报,并尝试多次拖动第一个dropspot中的元素,结果是。)增加:(我只需要为每一个dropspotDamn增加一次,还有一件事@rafaelcastrocouto,如何在重置后清除数据以再次计数?我将contor设置为0;但它不会因添加了大量注释而增加,所以您可以理解代码中发生了什么…再次感谢您的回复!这正是我想要的:)
src="http://your.site/images/clouds.svg"