我正在为孩子们制作教育游戏,但我遇到了一个大问题。 这是第一级:
<div class="row" id="one">
<div class="col-md-12">
<div class="col-md-3">
<img src="img/ananas.png" class="img-responsive dimenzii">
<h3 class="drop1" id="drop1">______________</h3>
</div>
<div class="col-md-3">
<h1 class="green" id="dr2">Кокос</h1>
</div>
<div class="col-md-3">
<h1 class="green" id="dr1">Ананас</h1>
</div>
<div class="col-md-3">
<img src="img/coconut.png" class="img-responsive dimenzii">
<h3 class="drop2" id="drop2">______________</h3>
</div>
</div>
</div>
我有4列,外面是水果图片,里面的两个包含水果的名称,所以任务是连接两个。 它工作正常。 问题是游戏何时结束,问题是&#34;你想再玩一次吗?&#34; 如果单击是,则显示为显示第一个级别,但名称已经拖到之前的位置。
我尝试手动将级别更改为先前的状态,但它无法正常工作。 这是我使用的jquery:
$("#begin,#Yes").click(function(){
$("#begin").hide();
game.play();
points = 0;
$("#stazi").show();
$("#final, #one,#two,#three,#four,#five,#six,#seven,#eight").hide();
$("#one").show();
$("#poeni").html(points);
$(".drop1,.drop2").html("_____________");
$("#dr1,#dr2").show();
setTimeout( function(){
game.pause();
$("#stazi").fadeOut(1000);
$("#finalPoints").html(points);
$("#final").delay(1000).fadeIn(2000);
win.play();
}
, 60000 );
});
任何人都可以告诉我如何保存初始条件,以便我以后可以使用它?
答案 0 :(得分:3)
您可以在开始之前将初始状态保存为变量。如果级别不是太大,你可以使用jQuery的.clone()来复制它,但实际上并没有把它放在DOM中。当您准备重置游戏时,您可以使用.replaceWith()销毁DOM上的那个,并将其替换为初始状态的保存副本。
var initialState = $(levelId).clone();
// do stuff that modifies the level
$(levelId).replaceWith(initialState);