Javascript 进食超过五次者增加分数
我可以将图像拖放到每周吃一次的篮子中 如果一个人每周吃这种食物超过五次,或者他从来没有吃过这种食物,那该怎么办 例如,如果一个人每周吃一次西瓜,尝试将西瓜图像从物品拖到篮子中并释放,分数将增加30分 如果同一个人一周吃五次西瓜,怎么提高他的分数 这里有一个脚本Javascript 进食超过五次者增加分数,javascript,Javascript,我可以将图像拖放到每周吃一次的篮子中 如果一个人每周吃这种食物超过五次,或者他从来没有吃过这种食物,那该怎么办 例如,如果一个人每周吃一次西瓜,尝试将西瓜图像从物品拖到篮子中并释放,分数将增加30分 如果同一个人一周吃五次西瓜,怎么提高他的分数 这里有一个脚本 var myscore=0; function dragStart(ev) { ev.dataTransfer.effectAllowed='move'; ev.dataTransfer.setData("Text", ev.ta
var myscore=0;
function dragStart(ev) {
ev.dataTransfer.effectAllowed='move';
ev.dataTransfer.setData("Text", ev.target.getAttribute('id'));
ev.dataTransfer.setDragImage(ev.target,0,0);
return true;
}
function dragEnter(ev) {
event.preventDefault();
return true;
}
function dragOver(ev) {
return false;
}
function dragDrop1(ev) {
var src = ev.dataTransfer.getData("Text");
if(!ev.target.contains(document.getElementById(src))){
ev.target.appendChild(document.getElementById(src));
ev.stopPropagation();
var cal=0;
switch(src){
case "image1": cal = 20; break;
case "image2": cal = 30; break;
case "image3": cal = 40; break;
case "image4": cal = 50; break;
case "image5": cal = 60; break;
default: cal=10;
}
myscore=myscore-cal;
document.getElementById('Score').innerHTML=myscore;
}
return true;
}
function dragDrop2(ev) {
var src = ev.dataTransfer.getData("Text");
if(!ev.target.contains(document.getElementById(src))){
ev.target.appendChild(document.getElementById(src));
ev.stopPropagation();
var cal=0;
switch(src){
case "image1": cal = 20; break;
case "image2": cal = 30; break;
case "image3": cal = 40; break;
case "image4": cal = 50; break;
case "image5": cal = 60; break;
default: cal=10;
}
myscore=myscore+cal;
document.getElementById('Score').innerHTML=myscore;
}
return true;
}
这是一个好的,这是交易。我添加了一个函数来复制food div,从而允许您根据需要多次拖放它
function duplicate(x) {
var clone = x.cloneNode(true);
clone.id = ""
clone.onclick = duplicate;
x.parentNode.insertBefore(clone, x.nextSibling);
}
这是一个例子
这样你就可以放任意多的西瓜了。问题是,你可以通过点击它们来增加里面的项目。我没有足够的时间来修复这些错误,但是现在你可以自己考虑。当我有时间的时候,我会清理脚本
PS:为了乘法的目的,我将ID改为类。这是一个很好的提问方式。感谢改进的版本,我无法克服这个错误——但有一个小错误——比如如果我将图片从项目列表拖放到项目列表中,图片就会消失,如果我将图像从篮子列表拖放到篮子列表中,出现更多图像。初始值后拖放的分数也有10分的波动。例如,如果我将图像从项目列表拖放到项目列表,则不应发生任何更改,如果我将图像从一个篮子拖放到另一个篮子,则不应发生任何更改place@James更好吗?您只需保存字段的原点,并在删除时检查它是否仍在同一个框中;)