我正在开发一个练习jQuery和PHP的小游戏。 通过点击正确的位置,您将转到下一个问题,否则您将失败。 为了检查正确答案,我使用了Img(问题的img)和usemap
<img id="questions" src="../img/items/question1.png" style="height: 450px;width: 700px;" usemap="#result">
<map name="result">
</map>
如您所见,地图没有区域。 我在剧本中添加的内容:
$(document).ready(function(){
var score = 0;
var answer1 = '<area class="true" shape="circle" coords="145, 175, 40" href="#">';
var entireImg = '<area class="false" shape="rect" coords="0, 0, 700, 450" href="#">';
$(answer1).appendTo('map');
$(entireImg).appendTo('map');
$('.true').click(function(){
score++;
$('#questions').attr({src: "../img/items/question2.png"});
});
$('.false').click(function(){
$('#questions').attr({src: "../img/items/fail.png"});
$('.notes').show();
});
});
如果你得到正确的答案,我会为每个问题添加一个带有正确答案位置的新区域。 现在我遇到的问题是;我无法从表单中删除以前的答案区域。 到目前为止我尝试了什么:
使用其他位置更改变量并将其添加到map:
$('.true').click(function(){
score++;
$('#questions').attr({src: "../img/items/question2.png"});
answer1 = '<area class="true" shape="circle" coords="200, 300, 40" href="#">';
$(answer1).appendTo('map');
});
从地图中删除var:
$('.true').click(function(){
score++;
$('#questions').attr({src: "../img/items/question2.png"});
$('answer1').remove();
});
删除添加的元素:
$('.true').click(function(){
score++;
$('<area class="true" shape="circle" coords="145, 175, 40" href="#">').remove();
});
清空值(并清空值并再次附加&#39;空&#39;值)。
不是那些工作,而且根据我迄今为止的知识(女巫不是那么多)我无法弄明白(已经花了2个小时用谷歌搜索)。
我把游戏放在这个链接上: http://i333180.iris.fhict.nl/demo/pages/index.php
此致
答案 0 :(得分:2)
由于您要删除要点击的元素,请使用:
$(".true").click(function() {
score++;
$(this).remove();
});