亲宝软件园·资讯

展开

使用jQuery实现掷骰子游戏

人气:0

直接新建一个html页面,需要在head中引入jquery,js,一些css代码以及js代码,如下:

<script type="text/javascript" src="jquery-1.8.3.min.js"></script>
<style type=text/css >
 .wrap{width:90px; height:90px; margin:120px auto 30px auto; position:relative} 
 .dice{width:90px; height:90px; background:url(dice.png) no-repeat;} 
 .dice_1{background-position:-5px -4px} 
 .dice_2{background-position:-5px -107px} 
 .dice_3{background-position:-5px -212px} 
 .dice_4{background-position:-5px -317px} 
 .dice_5{background-position:-5px -427px} 
 .dice_6{background-position:-5px -535px} 
 .dice_t{background-position:-5px -651px} 
 .dice_s{background-position:-5px -763px} 
 .dice_e{background-position:-5px -876px} 
 p#result{text-align:center; font-size:16px} 
 p#result span{font-weight:bold; color:#f30; margin:6px} 
 #dice_mask{width:90px; height:90px; background:#fff; opacity:0; position:absolute; 
  top:0; left:0; z-index:999}
</style>
<script>
 $(function(){ 
 var dice = $("#dice"); 
  dice.click(function(){ 
  dice.attr("class","dice");//清除上次动画后的点数 
  dice.css("cursor","default"); 
  $(".wrap").append("<div id='dice_mask'></div>");//加遮罩 
  var num = Math.floor(Math.random()*6+1);//产生随机数1-6 
  dice.animate({left: '+2px'}, 100,function(){ 
    dice.addClass("dice_t"); 
  }).delay(200).animate({top:'-2px'},100,function(){ 
    dice.removeClass("dice_t").addClass("dice_s"); 
  }).delay(200).animate({opacity: 'show'},600,function(){ 
    dice.removeClass("dice_s").addClass("dice_e"); 
  }).delay(100).animate({left:'-2px',top:'2px'},100,function(){ 
    dice.removeClass("dice_e").addClass("dice_"+num); 
    $("#result").html("您掷得点数是<span>"+num+"</span>"); 
    dice.css('cursor','pointer'); 
    $("#dice_mask").remove();//移除遮罩 
  }); 
    }); 
  });
</script>

其中要注意的jquery引入的路径,我是放在和该页面的相同路径下的。

页面body的代码如下:

<body>
<div id="dice" class="dice dice_1"></div> 
<p id="result">请直接点击上面的色子!</p>
</body>

需要额外的引入所有状态骰子的图片,注意图片名称

主要实现的基本原理就是在初始图片上添加点击事件,当点击发生的时候随机取数,然后根据数值去找dice.png这张图片对应骰子的位置

您可能感兴趣的文章:

加载全部内容

相关教程
猜你喜欢
用户评论