所以我试图为简单的查找对象游戏创建弹出逻辑。所以我创建了一个字符串数组,我希望显示2条警报消息。第一个警告,说明你发现[insertName]。然后,如果你再次点击同一个对象,它会显示一条通用消息“你已经找到了这个”。然后在点击所有图像后,我根据点击的项目的int计数加载了新页面。我遇到的问题是如何执行第一个初始警报。我想我会为初始警报创建另一个数组,但是当我遇到困难时。
<div id="b1" class="mybox">One</div>
<div id="b2" class="mybox">Two </div>
<div id="b3" class="mybox">Three </div>
<div id="b4" class="mybox">Four </div>
<div id="b5" class="mybox">Effortless Calls </div>
<div id="b6" class="mybox">Voicebot </div>
<script type="text/javascript">
//$('body').css('background','blue');
var Boxes = [];
var ttle = $('.mybox').length;
$('.mybox').click(function () {
alert('Blah ');
var bx = this.id;
if (Boxes.indexOf(bx) >= 0){
alert('You Already Found Object ');
}else{
Boxes.push(bx);
}
if (Boxes.length ==ttle)
window.location = "#/finishedgame";
});
</script>
答案 0 :(得分:0)
在Boxes.push(bx);
为什么不做alert(hey you found [insertName]);
之前,你不需要另一个阵列?这应该是用户第一次触摸一个盒子,也就是当你想要至少从你从帖子中收集到的第一个警报时。所以
var Boxes = [];
var ttle = $('.mybox').length;
$('.mybox').click(function () {
var bx = this.id;
if (Boxes.indexOf(bx) >= 0){
alert('You Already Found Object ');
}else{
var text = [get name of box here]
alert("hey you found" + text);
Boxes.push(bx);
}
if (Boxes.length ==ttle)
window.location = "#/finishedgame";
});
答案 1 :(得分:0)
为您的元素添加自定义属性data-clicked =&#34; false&#34;
当用户点击元素集elem.setAttribute时(&#39;数据点击&#39;,&#39; true&#39;);
<div id="b1" class="mybox" data-clicked="false">One</div>
<div id="b2" class="mybox" data-clicked="false">Two </div>
<div id="b3" class="mybox" data-clicked="false">Three </div>
<div id="b4" class="mybox" data-clicked="false">Four </div>
<div id="b5" class="mybox" data-clicked="false">Effortless Calls </div>
<div id="b6" class="mybox" data-clicked="false">Voicebot </div>
$('.mybox').click(function (elem) {
var clicked = $(elem).data('clicked');
if(clicked){
alert(msg1);
} else {
alert(msg1);
elem.setAttribute('data-clicked','true');
};
});