html:

<h1>这是一个剪刀石头布游戏</h1>
<h2>请出拳吧!少年!</h2>
<h3>您已经获胜了<span id="win-count"></span>次!!!</h3>
<div id="choose">
<img src="data:images/jiandao.jpg" alt="剪刀" id="jiandao" width="200" height="200">
<img src="data:images/shitou.jpg" alt="石头" id="shitou" width="200" height="200">
<img src="data:images/bu.jpg" alt="布" id="bu" width="200" height="200">
</div>
<img src="" id="yourchoose" alt="" width="200" height="200">
<span id="result"></span>
<img src="" id="computer" alt="" width="200" height="200">

css:

<style type="text/css">
* {
margin: 0;
padding: 0;
}
body {
background: gray;
text-align: center;
color: aqua;
}
#choose {
margin: 50px auto;
height: 200px;
width: 800px;
}
#choose img {
cursor: pointer;
margin-right: 95px;
}
#choose img:last-child {
margin-right: 0;
}
#result {
font-size: 20px;
}
#win-count {
font-size: 20px;
color: red;
}
</style>

Javascript:

<script type="text/javascript">

        function $ (id) {
return document.getElementById(id);
} var winCount = 0;
function Game (choose) {
choose.addEventListener('click', function () {
if (choose == $('jiandao')) {
$('yourchoose').src = "images/jiandao.jpg";
} else if (choose == $('shitou')) {
$('yourchoose').src = "images/shitou.jpg";
} else {
$('yourchoose').src = "images/bu.jpg";
}
var computerResult = Math.random();
if (computerResult < 0.33) {
$('computer').src = "images/jiandao.jpg";
if (choose == $('jiandao')) {
$('result').innerHTML = "平手";
} else if (choose == $('shitou')) {
$('result').innerHTML = "你赢了";
winCount++;
} else {
$('result').innerHTML = "你输了";
}
} else if (computerResult < 0.67) {
$('computer').src = "images/shitou.jpg";
if (choose == $('shitou')) {
$('result').innerHTML = "平手";
} else if (choose == $('bu')) {
$('result').innerHTML = "你赢了";
winCount++;
} else {
$('result').innerHTML = "你输了";
}
} else {
$('computer').src = "images/bu.jpg";
if (choose == $('bu')) {
$('result').innerHTML = "平手";
} else if (choose == $('jiandao')) {
$('result').innerHTML = "你赢了";
winCount++;
} else {
$('result').innerHTML = "你输了";
}
}
$('win-count').innerHTML = winCount;
});
} Game($('jiandao'));
Game($('shitou'));
Game($('bu'));
</script>

原生JS-----一个剪刀石头布游戏的更多相关文章

  1. JQuery&原生js ——实现剪刀石头布小游戏

    前言 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库( 或JavaScript框架).jQuery设计的宗旨是“write L ...

  2. 原生JS实现拼图游戏

    最近无聊,练练原生JS:实现拼图游戏.两种玩法:第一种是单击元素进行交换位置:第二种是拖拽元素进行位置交换.首先需要上传图片并进行回显(需要用到FileReader):下面是部分截图: 可以自行设置切 ...

  3. 原生Js贪吃蛇游戏实战开发笔记

    前言 本课程是通过JavaScript结合WebAPI DOM实现的一版网页游戏---贪吃蛇的开发全过程,采用面向以象的思想设计开发.通过这个小游戏的开发, 不仅可以掌握JS的语法的应用,还可以学会D ...

  4. 用原生js写小游戏--Flappy Bird

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 一个简单用原生js实现的小游戏----FlappyBird

    这是一个特别简单的用原生js实现的一个小鸟游戏,比较简单,适合新手练习 这是html结构 <!DOCTYPE html><html lang="en">&l ...

  6. 用原生JS写一个网页版的2048小游戏(兼容移动端)

    这个游戏JS部分全都是用原生JS代码写的,加有少量的CSS3动画,并简单的兼容了一下移动端. 先看一下在线的demo:https://yuan-yiming.github.io/2048-online ...

  7. 通过游戏认识 --- JQuery与原生JS的差异

      前言 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库( 或JavaScript框架).jQuery设计的宗旨是“write ...

  8. 原生JS+Canvas实现五子棋游戏

    一.功能模块 先看下现在做完的效果: 线上体验:https://wj704.github.io/five_game.html 主要功能模块为: 1.人机对战功能 2.悔棋功能 3.撤销悔棋功能 二.代 ...

  9. 用HTML5+原生js实现的推箱子游戏

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

随机推荐

  1. Spring Cloud Ribbon---微服务调用和客户端负载均衡

    前面分析了Eureka的使用,作为服务注册中心,Eureka 分为 Server 端和 Client 端,Client 端作为服务的提供者,将自己注册到 Server 端,Client端高可用的方式是 ...

  2. from bs4 import BeautifulSoup 引入需要安装的文件和步骤

    调用beautifulsoup库时,运行后提示错误: ImportError: No module named bs4 , 意思就是没有找到bs4模块,所以解决方法就是将bs4安装上,具体步骤如下: ...

  3. Spark2.x(六十):在Structured Streaming流处理中是如何查找kafka的DataSourceProvider?

    本章节根据源代码分析Spark Structured Streaming(Spark2.4)在进行DataSourceProvider查找的流程,首先,我们看下读取流数据源kafka的代码: Spar ...

  4. Nginx系列 | [转]Nginx 上传文件:client_max_body_size 、client_body_buffer_size

    原文:http://php-note.com/article/detail/488 client_max_body_size client_max_body_size 默认 1M,表示 客户端请求服务 ...

  5. 【mybatis源码学习】mybatis的反射模块

    一.重要的类和接口 org.apache.ibatis.reflection.MetaClass//对于javaBean的calss类进行反射操作的代理类(获取属性的类型,获取属性的get,set方法 ...

  6. Mxnet:以全连接层为例子自定义新的操作(层)

    https://blog.csdn.net/a350203223/article/details/77449630 在使用深度学习平台时,光会使用其中已定义好的操作有时候是满足不了实际使用的,一般需要 ...

  7. Buffon投针问题

  8. springMVC中controller的传参的几种案例

    1.springmvc的controller方法不指定method时,默认get/post都支持 //@RequestMapping(value="test") //@Reques ...

  9. 事务管理(ACID)和事务的隔离级别

    https://blog.csdn.net/dengjili/article/details/82468576 谈到事务一般都是以下四点 原子性(Atomicity)原子性是指事务是一个不可分割的工作 ...

  10. [LeetCode] 165. Compare Version Numbers 比较版本数

    Compare two version numbers version1 and version1.If version1 > version2 return 1, if version1 &l ...