JQuery手速测试小游戏实现思路详解


Posted in Javascript onSeptember 20, 2016

(-1)写在前面

我用的chrome49,jquery3.0,我得到过399分,信不信由你。

(1)设计思路

两个p元素放在div里,每个p元素的高度和宽度都和div一样,当鼠标放在div上时,第一个p向上移动(更改marginTop值),当鼠标离开div上时,第一个p向下移动。

(2)知识储备

a. :nth-child

#lol p:nth-child(1),当前元素p相对于他的父元素的所有子元素,如果第一个元素是p则匹配成功。

#lol :nth-child(1) 相当于#lol *:nth-child(1)

(3) 代码

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset=utf-8>
<script type="text/javascript" src="debug-jquery-3.0.0.js"></script>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<title>为了生活</title>
<style type="text/css">
*
{
margin:0px;
padding:0;
}
body
{
position:absolute;
}
#lol
{
width:400px;
height:400px;
position:absolute;
overflow:hidden;
cursor:pointer;
}
#lol p
{
width:400px;
height:400px;
}
#lol p:nth-child(1)
{ 
background:blue;
}
#lol p:nth-child(2)
{
background:orange;
}
</style>
<script type="text/javascript">
$(function()
{
var $lol = $("#lol"),
$oneP = $lol.children().first(),
$score = $("#score");
$lol.centerPos();
$lol.hover(function()
{
$oneP.animate({marginTop:-$oneP.height()},400)
},function()
{
var number = -parseInt($oneP.css("marginTop"));
if(number == $oneP[0].offsetHeight)
{
number = 0;
}
$(score).text(number);
$oneP.stop(true,false).animate({marginTop:0},400);
})
})
$.fn.centerPos = function()
{
var parent;
this.each(function(index)
{
parent = this.parentNode;
if(parent == document.body)
{
parent = window;
}
var position = $(this).css("position");
if(position == "fixed" || position=="absolute")
{
$(this).css("left",($(parent).width()-this.offsetWidth)/2+"px")
.css("top",($(parent).height()-this.offsetHeight)/2+"px");
}
else
{
window.console.error("没有设置有效的position值");
}
})
return this;
} 
</script>
</head
<body>
<div>当前得分:<span id="score">0</span>分</div>
<div id="lol">
<p></p>
<p></p>
</div>
</body> 
</html>

以上所述是小编给大家介绍的JQuery手速测试小游戏实现思路详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
扩展JS Date对象时间格式化功能的小例子
Dec 02 Javascript
js/jquery获取文本框输入焦点的方法
Mar 04 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
Mar 28 Javascript
jquery制作图片时钟特效
Mar 30 Javascript
前端设计师们最常用的JS代码汇总
Sep 25 Javascript
轻松实现jquery选项卡切换效果
Oct 10 Javascript
ionic实现底部分享功能
May 11 Javascript
通过vue提供的keep-alive减少对服务器的请求次数
Apr 01 Javascript
Angular如何由模板生成DOM树的方法
Dec 23 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
Feb 09 Javascript
vue 子组件修改data或调用操作
Aug 07 Javascript
Vue与React的区别和优势对比
Dec 18 Vue.js
javascript cookie基础应用之记录用户名的方法
Sep 20 #Javascript
深入理解requestAnimationFrame的动画循环
Sep 20 #Javascript
javascript cookie用法基础教程(概念,设置,读取及删除)
Sep 20 #Javascript
谈谈对JavaScript原生拖放的深入理解
Sep 20 #Javascript
Javascript获取图片原始宽度和高度的方法详解
Sep 20 #Javascript
AngularJS 过滤器(自带和自建)详解
Sep 19 #Javascript
js Canvas实现圆形时钟教程
Sep 19 #Javascript
You might like
PHP中字符串长度的截取用法示例
2017/01/12 PHP
解决在laravel中auth建立时候遇到的问题
2019/10/15 PHP
jquery 图片截取工具jquery.imagecropper.js
2010/04/09 Javascript
Javascript执行效率全面总结
2013/11/04 Javascript
jQuery中attr()方法用法实例
2015/01/05 Javascript
JavaScript的Backbone.js框架的一些使用建议整理
2016/02/14 Javascript
分享JS代码实现鼠标放在输入框上输入框和图片同时更换样式
2016/09/01 Javascript
JavaScript鼠标特效大全
2016/09/13 Javascript
jQuery插件easyUI实现通过JS显示Dialog的方法
2016/09/16 Javascript
vue.js将unix时间戳转换为自定义时间格式
2017/01/03 Javascript
JS查找数组中重复元素的方法详解
2017/06/14 Javascript
详解Vue2 SSR 缓存 Api 数据
2017/11/20 Javascript
详解layui中的树形关于取值传值问题
2018/01/16 Javascript
vue实现tab切换外加样式切换方法
2018/03/16 Javascript
Vue 动态设置路由参数的案例分析
2018/04/24 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
2018/09/30 Javascript
小程序获取当前位置加搜索附近热门小区及商区的方法
2019/04/08 Javascript
7个好用的JavaScript技巧分享(译)
2019/05/07 Javascript
小程序实现长按保存图片的方法
2019/12/31 Javascript
js实现鼠标滑动到某个div禁止滚动
2020/09/17 Javascript
[01:29:46]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第二局
2016/02/27 DOTA
Python学习之用pygal画世界地图实例
2017/12/07 Python
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
python使用Pandas库提升项目的运行速度过程详解
2019/07/12 Python
python实现网站用户名密码自动登录功能
2019/08/09 Python
浅析Python 多行匹配模式
2020/07/24 Python
python如何编写类似nmap的扫描工具
2020/11/06 Python
python 三种方法提取pdf中的图片
2021/02/07 Python
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
美国网上花店:JustFlowers
2017/02/12 全球购物
英国莱斯特松木橡木家具网上商店:Choice Furniture Superstore
2019/07/05 全球购物
活动总结模板
2014/05/09 职场文书
求职意向书
2014/07/29 职场文书
股东授权委托书范本
2014/09/13 职场文书
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
2021/05/21 Redis
Python 视频画质增强
2022/04/28 Python