如何撤消JavaScript中的拖放操作?

问题描述

在面向幼儿的页面上,他们必须将3个符号“ ”之一拖放到2个随机数字之间。该功能一次。

在向他们显示他们是否正确之后,我想自动撤消拖放操作并显示2个新的随机数。这意味着将他们选择的标志发送回其原始位置。像

WARNING FALSE CODE
move(document.getElementById("up3").innerHTML,document.getElementById("middle3").innerHTML);

我的“ up3”和“ middle3”是该类型的div

<div class="up3" id="up3"></div>

对应的类刚刚处理 位置,边界等。

解决方法

在面向幼儿的页面上,他们必须将3个符号“ ”之一拖放到2个随机数字之间。该功能一次。

在向他们显示他们是否正确之后,我想自动撤消拖放操作并显示2个新的随机数。这意味着将他们选择的标志发送回其原始位置。像...

我可以想到3 ways做到这一点

  1. 很难重新加载页面:

    location.reload(true); // reload(false) reloads the browser cache
    window.location.reload();
    
  2. <div id="a">中的所有代码/文本传输到<div id="b">

    document.getElementById("b").innerHTML = document.getElementById("a").innerHTML; // transfer code line
    document.getElementById("a").innerHTML = null;
    

    document.getElementById("b").innerHTML = document.getElementById("a").innerHTML; // transfer code line
    document.getElementById("a").innerHTML = "<div>Empty state code-block</div>";
    
  3. 最后(更简洁的方法)创建reset() js函数,在需要时调用

    function reset(){
       document.querySelector("#answer-container").innerHTML = null;
       document.querySelector("#gt-container").innerHTML = ">";
       document.querySelector("#lt-container").innerHTML = "<";
       document.querySelector("#e-container").innerHTML = "=";
       document.querySelector("#gt-container").innerHTML = ">";
       // more code...
    }
    

我认为您应该将问题重新表述为更具体的陈述,我不确定我的答案是否可以得到您想要的结果。