使用ajax简单写一个猜拳游戏

HTML代码

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
<script src="http://cdn.bootcss.com/jquery/2.2.4/jquery.js"></script>
<select id="check_type">
<option value="">请选择</option>
<option value="1">石头</option>
<option value="2">剪刀</option>
<option value="3">布</option>
</select>
<input type="button" value="猜拳" id="btn" />
<div id="result"></div>
</head>
<body>
<script type="text/javascript">
$(function(){
//页面加载完毕后开始执行的事件
$("#btn").click(function(){
var your_type=$("#check_type").val();
if(your_type=="")
{
$("#result").text("请选择你出什么");return false;
}
$.post("http://localhost/test.php",{"your_type":your_type},function(res){
if(res.error_code==0)
{
//说明成功了
$("#result").text("电脑出了"+res.computer_type+" ,结果是您"+res.result);
}else
{
$("#result").text(res.error_message);
}
},"json");
});
});
</script>
</body>
</html>

然后发起后端的请求。接口在test.php中实现

<?php
$your_type=isset($_POST['your_type'])?$_POST['your_type']:"1";//接受用户的选择
if(in_array($your_type,array(1,2,3),true))
{
//用户选择的不是石头剪子布其中的一个 告知选择不正确
die(json_encode(array("error_code"=>1,"error_message"=>"猜拳选择不正确")));
} $type_list=array("1"=>"石头","2"=>"剪刀","3"=>"布");//定义选择对应猜拳
$computer_type=rand(1,3);//电脑随机选择
$diff=$your_type-$computer_type;//计算用户选择与电脑选择的差值
$auto_result=array(
-2=>"输了",
-1=>"获胜",
0 =>"平局",
1 =>"输了",
2 =>"获胜",
);//定义好比较结果 $return=array(
"computer_type"=>$type_list[$computer_type],//电脑选择
"result"=>$auto_result[$diff],//猜拳结果
"error_code"=>0,//错误码
"error_message"=>"ok" //错误提示信息
); echo json_encode($return);//返回json
exit();
?>

效果如图:

ajax简单手写了一个猜拳游戏的更多相关文章

  1. 简单手写一个jqurey

    1 /** 2 * @description 手写jquery 3 * @author ddxldxl 4 */ 5 class Jquery { 6 constructor(selector) { ...

  2. 为sproto手写了一个python parser

    这是sproto系列文章的第三篇,可以参考前面的<为sproto添加python绑定>.<为python-sproto添加map支持>. sproto是云风设计的序列化协议,用 ...

  3. 10分钟教你用python 30行代码搞定简单手写识别!

    欲直接下载代码文件,关注我们的公众号哦!查看历史消息即可! 手写笔记还是电子笔记好呢? 毕业季刚结束,眼瞅着2018级小萌新马上就要来了,老腊肉小编为了咱学弟学妹们的学习,绞尽脑汁准备编一套大学秘籍, ...

  4. servlet(1) - 手写第一个servlet程序 - 小易Java笔记

    声明:如tomcat的安装目录为D:\Java\tomcat6,下面要根据tomcat的安装目录而定 1. 建立程序的文件结构 ==>找到tomcat的安装目录,在webapps目录下新建一个名 ...

  5. 【Java】 ArrayList和LinkedList实现(简单手写)以及分析它们的区别

    一.手写ArrayList public class ArrayList { private Object[] elementData; //底层数组 private int size; //数组大小 ...

  6. 用JS写了一个打字游戏,反正我是通不了关

    今天想写个简单的游戏, 打字游戏好像都没写过, 那么就写打字游戏吧, gamePad包含了关卡的信息, 可以用来调整给个关卡字符下落的速度: getRandom函数会返回一个字符对象, 这个对象包含了 ...

  7. Neeto-Vue:我为了记笔记,手写了一个为知笔记客户端

    构建自托管的笔记系统 这两年各种笔记系统快速井喷,好像谁都能来掺一脚,app store随便搜索一个关键字就会有一大堆的结果,从老牌的印象笔记,Bear,MWeb,有道云笔记再到新星专注笔记之类,从买 ...

  8. python案例:使用if语句实现一个猜拳游戏

    任务要求: 在控制台中提示输入石头.剪刀.布,按回车键,然后给出游戏结果. 分析: 我们知道在游戏规则中,石头克剪刀,剪刀克布,布克石头.但是这在计算机中并不是很好直接的表示,因此我们分别用0.1.2 ...

  9. 利用SpringBoot+Logback手写一个简单的链路追踪

    目录 一.实现原理 二.代码实战 三.测试 最近线上排查问题时候,发现请求太多导致日志错综复杂,没办法把用户在一次或多次请求的日志关联在一起,所以就利用SpringBoot+Logback手写了一个简 ...

随机推荐

  1. Zookeeper 快速理解

    转自:http://blog.csdn.net/colorant/article/details/8444283 == 是什么 == 目标Scope(解决什么问题) 为分布式系统提供高可靠性的协同工作 ...

  2. (笔记)电路设计(十一)之DC/DC电源转换方案设计应用

    十大 法则之一:搞懂什么是DC/DC电源以及DC/DC转换电路分类 DC/DC电源电路又称为DC/DC转换电路,其主要功能就是进行输入输出电压转换.一般我们把输入电源电压在72V以内的电压变换过程称为 ...

  3. Java并发编程笔记—摘抄—基础知识

    什么是线程安全 当多个线程访问某个类时,不管运行环境采用何种调度方式或者这些线程如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的. 竞态 ...

  4. 将项目安装到Maven本地资源库

    在Maven中,可以使用“mvn install”打包项目,并自动部署到本地资源库,让其他开发人员使用它. mvn install 注意,当“install”在执行阶段,上述所有阶段 “validat ...

  5. e835. 使JTabbedPane中的卡片生效和失效

    By default, all new tabs are enabled, which means the user can select them. A tab can be disabled to ...

  6. mysql存储过程----临时表 temporary

    在存储过程中可以使用临时表,下面有一个分割字符串的例子 语法 1.创建:create temporary table 表名(列信息); 2.删除:drop table 表名; 3.清空:truncat ...

  7. unity--------shader之standard 标准参数

    [Unity3D自学记录]Unity5 之 standard参数 标签: unity3d 2016-07-13 10:17 2428人阅读 评论(0) 收藏 举报  分类: Unity3D(70)   ...

  8. (转)MP4文件两种格式AVC1和H264的区别及利用FFMPEG demux为h264码流事项

    出自:http://www.mworkbox.com/wp/work/314.html 2013-05-04 MP4的视频H264封装有2种格式:h264和avc1,对于这个细节,很容易被忽略.笔者也 ...

  9. Java内存、CPU占用率过高

    windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码 linux下查找java进程占用CPU过高原因 Java 占用CPU使用率很高的分析 记一次线上Java程序导致服 ...

  10. goldengate一些參数整理

    manager參数: AUTOSTART:指定在mgr启动时自己主动启动那些进程. AUTOSTART ER * AUTOSTART extract extsz  AUTORESTART:指定在mgr ...