坦克大战中的js(01)—js生成伪随机数应用

背景说明:

按照《90坦克大战》,方格砖墙的样式组合共有15种,

图片资源



 (注:所有用到的图片资源都来源于etherdream 的 坦克大战作品:http://bbs.csdn.net/topics/380132638

 

现在要实现在页面上有一个div,点一个刷新按钮,可以随机的显示这15中砖墙样式中的任何一种。主要

用到了Math.random方法。

 

关键代码如下:

$('button').click(function(){
            //生成1-15的随机数
            var n = Math.floor(Math.random() * 15) + 1;
            // 将n转成二进制
            var b = n.toString(2);
            // 不足4位前面补0,达到4位
            b = ("000" + b).slice(-4);
            // 设置方形砖墙div的class
            $('.brick').attr("class", "brick brick"+b);
        });

 

说明:

   上面的brick样式,共有15中定义,定义按照四位二进制数的形式。可以把一个砖墙分成4块,上下各两块。比如:
  代表 二进制数”1011“。

 

样式定义如下:

 

div.brick{
    width: 32px;
    height: 32px;
    border: 1px solid #ffffff;
    margin-bottom: 4px;
    position: absolute;
}
div.brick.brick1111{
    background: url(../img/Terr.png) no-repeat -1120px 0px;
}
div.brick.brick0111{
    background: url(../img/Terr.png) no-repeat -1088px 0px;
}
div.brick.brick1011{
    background: url(../img/Terr.png) no-repeat -1056px 0px;
}
div.brick.brick0011{
    background: url(../img/Terr.png) no-repeat -1024px 0px;
}
div.brick.brick1101{
    background: url(../img/Terr.png) no-repeat -992px 0px;
}
div.brick.brick0101{
    background: url(../img/Terr.png) no-repeat -960px 0px;
}
div.brick.brick1001{
    background: url(../img/Terr.png) no-repeat -928px 0px;
}
div.brick.brick0001{
    background: url(../img/Terr.png) no-repeat -896px 0px;
}
div.brick.brick1110{
    background: url(../img/Terr.png) no-repeat -864px 0px;
}
div.brick.brick0110{
    background: url(../img/Terr.png) no-repeat -832px 0px;
}
div.brick.brick1010{
    background: url(../img/Terr.png) no-repeat -800px 0px;
}
div.brick.brick0010{
    background: url(../img/Terr.png) no-repeat -768px 0px;
}
div.brick.brick1100{
    background: url(../img/Terr.png) no-repeat -736px 0px;
}
div.brick.brick0100{
    background: url(../img/Terr.png) no-repeat -704px 0px;
}
div.brick.brick1000{
    background: url(../img/Terr.png) no-repeat -672px 0px;
}

 

最后是这个例子的源代码:

 


 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java小卷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值