ajax简单手写了一个猜拳游戏
使用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简单手写了一个猜拳游戏的更多相关文章
- 简单手写一个jqurey
1 /** 2 * @description 手写jquery 3 * @author ddxldxl 4 */ 5 class Jquery { 6 constructor(selector) { ...
- 为sproto手写了一个python parser
这是sproto系列文章的第三篇,可以参考前面的<为sproto添加python绑定>.<为python-sproto添加map支持>. sproto是云风设计的序列化协议,用 ...
- 10分钟教你用python 30行代码搞定简单手写识别!
欲直接下载代码文件,关注我们的公众号哦!查看历史消息即可! 手写笔记还是电子笔记好呢? 毕业季刚结束,眼瞅着2018级小萌新马上就要来了,老腊肉小编为了咱学弟学妹们的学习,绞尽脑汁准备编一套大学秘籍, ...
- servlet(1) - 手写第一个servlet程序 - 小易Java笔记
声明:如tomcat的安装目录为D:\Java\tomcat6,下面要根据tomcat的安装目录而定 1. 建立程序的文件结构 ==>找到tomcat的安装目录,在webapps目录下新建一个名 ...
- 【Java】 ArrayList和LinkedList实现(简单手写)以及分析它们的区别
一.手写ArrayList public class ArrayList { private Object[] elementData; //底层数组 private int size; //数组大小 ...
- 用JS写了一个打字游戏,反正我是通不了关
今天想写个简单的游戏, 打字游戏好像都没写过, 那么就写打字游戏吧, gamePad包含了关卡的信息, 可以用来调整给个关卡字符下落的速度: getRandom函数会返回一个字符对象, 这个对象包含了 ...
- Neeto-Vue:我为了记笔记,手写了一个为知笔记客户端
构建自托管的笔记系统 这两年各种笔记系统快速井喷,好像谁都能来掺一脚,app store随便搜索一个关键字就会有一大堆的结果,从老牌的印象笔记,Bear,MWeb,有道云笔记再到新星专注笔记之类,从买 ...
- python案例:使用if语句实现一个猜拳游戏
任务要求: 在控制台中提示输入石头.剪刀.布,按回车键,然后给出游戏结果. 分析: 我们知道在游戏规则中,石头克剪刀,剪刀克布,布克石头.但是这在计算机中并不是很好直接的表示,因此我们分别用0.1.2 ...
- 利用SpringBoot+Logback手写一个简单的链路追踪
目录 一.实现原理 二.代码实战 三.测试 最近线上排查问题时候,发现请求太多导致日志错综复杂,没办法把用户在一次或多次请求的日志关联在一起,所以就利用SpringBoot+Logback手写了一个简 ...
随机推荐
- JDBC-批处理操作
javaweb学习总结(三十六)——使用JDBC进行批处理 在实际的项目开发中,有时候需要向数据库发送一批SQL语句执行,这时应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效 ...
- HTML5数据推送SSE原理及应用开发
JavaScript表达行为,CSS表达外观,注意HTML既表达结构(逻辑结构),又表达内容(数据本身)通常需要更新数据时,并不需要更新结构,正是这种不改变组织结构仅改变数据的诉求,推动了数据拉取和数 ...
- css限制显示字数,文字长度超出部分用省略号表示【转】
为了保证页面的整洁美观,在很多的时候,我们常需要隐藏超出长度的文字.这在列表条目,题目,名称等地方常用到. (1).文字超出一行,省略超出部分,显示'...' 如果这种情况比较多,可以取一个切合作用的 ...
- [maven] settings 文件 本地maven仓库
<?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...
- Ubuntu下允许Root用户的操作 (图形界面登录、su切换……)
Ubuntu安装后,root用户默认是被锁定了的,不允许登录,也不允许“su”到 root.虽然这样的设置使安全性更高一些,但对于开发者来 说就显得很不方便了.如何让Ubuntu允许root用户直接登 ...
- tornado 的 define 和options方法解读
一.源码解读 tornado是facebook开源的非阻塞web容器,类似java的netty,tornado.options是负责解析tornado容器的全局参数的,同时也能够解析命令行传递的参数和 ...
- e867. 获取和设置外观
To change the look and feel, you need to know the class name of the new look and feel. This example ...
- e782. 排列JList中的项
By default, the items in a list are arranged vertically, in a single column, as in: item1 item2 ... ...
- CentOS系统很卡的基本排查方法
来源:http://www.centoscn.com/CentOS/Intermediate/2017/1012/9032.html 一. 查看内存使用情况 1. free命令可查看内存使用情况 2 ...
- Websphere下删除某个文件(ibm-partialapp-delete.props)
Websphere下删除某个文件(ibm-partialapp-delete.props)