jQuery实现拼图小游戏(实例讲解)
发布时间 - 2026-01-11 02:28:42 点击率:次小熊维尼拼图

jQuery代码实现拼图小游戏,鼠标选中拼块,用上下左右键移动拼块。
html代码
<div id="box-div">
<!--走不通时的提示!-->
<div id="tips">
<p>\(╯-╰)/ 哎呦,走不通啦!</p>
</div>
<div id="container">
<div class="row">
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_01.png" alt="photo1"/></div>
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_02.gif" alt="photo2"/></div>
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_03.gif" alt="photo3"/></div>
</div>
<div class="row">
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_04.gif" alt="photo4"/></div>
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_05.gif" alt="photo5"/></div>
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_06.gif" alt="photo6"/></div>
</div>
<div class="row">
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_07.gif" alt="photo7"/></div>
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_08.gif" alt="photo8"/></div>
<div class="unit"><img src="http://yn321.cn3v.net/images/weini_part_09.gif" alt="photo9"/></div>
</div>
</div>
</div
#box-div {
position: relative;
width: 508px;
height: 631px;
margin: 0 auto;
}
#container {
width: 508px;
height: 631px;
margin: 0 auto;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border: 1px solid #d5e0e6;
}
#container > .row {
display: -webkit-box;
white-space: nowrap;
}
#container > .row > .unit {
width: 169px;
height: 209px;
display: inline-block\9;/*兼容IE9/10*/
vertical-align: top\9;/*兼容IE9/10*/
box-sizing: border-box;
border: 1px solid rgba(7, 157, 239, 0);
}
#container > .row > .unit.move {
border: 1px solid rgba(7, 157, 239, 1);
}
#tips {
width: 200px;
height: 50px;
background: rgb(152, 206, 50);
position: absolute;
z-index: 5;
top: -50px;
left: calc(50% - 100px);
opacity: 0;
}
#tips > p {
margin: 0;
line-height: 50px;
text-align: center;
color: white;
}
.directions{
width:50%;
margin:0 auto;
text-align: center;
line-height: 30px;
color: white;
background-color: #a7cbf0;
}
jquery代码
$("#container>.row>.unit>img").each(function () {
$(this).click(function (event) {
event.stopPropagation();
$(".unit").removeClass("move");
$(this).parent(".unit").addClass("move");
})
});
move(".move","#tips");
function move(className,idName) {
/* 提示信息 */
function tipsAlert(idName) {
$(idName).animate({top: "0", opacity: "1"}, 500);
setTimeout(function () {
$(idName).animate({top: "-50px", opacity: "0"}, 800);
}, 1000)
}
/* 上下左右按键移动 */
$(document).keydown(function (e) {
var code = e.keyCode;
if (code > 40 || code < 37) {
return false;
}
var prev = $(className)[0].previousElementSibling;//选中元素前置位元素是否存在,以此判断元素是否还可以左右移动
var next = $(className)[0].nextElementSibling;//选中元素后置位元素是否存在,以此判断元素是否还可以左右移动
var paprev = $(className).parent()[0].previousElementSibling;//选中元素父级前置位元素是否存在,以此判断元素是否还可以上下移动
var panext = $(className).parent()[0].nextElementSibling;//选中元素父级后置位元素是否存在,以此判断元素是否还可以上下移动
var index = $(className).index();//根据选中元素的索引值,来确定上下移动时对换的位置
var movenDiv = $(className).next()[0];//以此确定上下对换元素添加方式
var movepDiv = $(className).prev()[0];//以此确定上下对换元素添加方式
switch (code) {
case 37://左
if (prev) {
$(className).insertBefore(prev);
} else {
tipsAlert(idName);
}
break;
case 38://上
if (paprev) {
var exchangeTop = $(paprev).children()[index];
$(className).insertBefore(exchangeTop);
if (movenDiv) {
$(exchangeTop).insertBefore(movenDiv);
} else {
$(exchangeTop).insertAfter(movepDiv)
}
} else {
tipsAlert(idName);
}
break;
case 39://右
if (next) {
$(className).insertAfter(next);
} else {
tipsAlert(idName)
}
break;
case 40://下
if (panext) {
var exchangeBottom = $(panext).children()[index];
$(className).insertBefore(exchangeBottom);
if (movenDiv) {
$(exchangeBottom).insertBefore(movenDiv);
} else {
$(exchangeBottom).insertAfter(movepDiv)
}
} else {
tipsAlert(idName);
}
break;
}
});
}
以上这篇jQuery实现拼图小游戏(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# 拼图小游戏
# 基于jquery实现九宫格拼图小游戏
# jQuery实现贪吃蛇小游戏(附源码下载)
# jQuery编写网页版2048小游戏
# jQuery实现简易的天天爱消除小游戏
# jQuery网页版打砖块小游戏源码分享
# jQuery制作拼图小游戏
# jQuery实现数字华容道小游戏(实例代码)
# 还可以
# 是否存在
# 给大家
# 对换
# 走不通
# 鼠标
# 右键
# 提示信息
# 希望能
# 上下左右
# 这篇
# 小编
# 大家多多
# 哎呦
# 小熊维尼
# css
# gif
# sizing
# border
# auto
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
网站制作报价单模板图片,小松挖机官方网站报价?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
如何在IIS管理器中快速创建并配置网站?
使用Dockerfile构建java web环境
如何快速生成高效建站系统源代码?
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
Python并发异常传播_错误处理解析【教程】
非常酷的网站设计制作软件,酷培ai教育官方网站?
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
微信小程序 require机制详解及实例代码
如何快速搭建安全的FTP站点?
HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】
如何在Windows环境下新建FTP站点并设置权限?
Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能
Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】
轻松掌握MySQL函数中的last_insert_id()
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理
,交易猫的商品怎么发布到网站上去?
教你用AI将一段旋律扩展成一首完整的曲子
nginx修改上传文件大小限制的方法
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
如何在阿里云域名上完成建站全流程?
如何将凡科建站内容保存为本地文件?
如何在阿里云通过域名搭建网站?
Laravel怎么使用Intervention Image库处理图片上传和缩放
Laravel如何实现本地化和多语言支持?(i18n教程)
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
5种Android数据存储方式汇总
如何有效防御Web建站篡改攻击?
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
Android仿QQ列表左滑删除操作
如何用PHP工具快速搭建高效网站?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
Win11关机界面怎么改_Win11自定义关机画面设置【工具】
如何在建站之星网店版论坛获取技术支持?
Laravel如何发送系统通知?(Notification渠道示例)
高端网站建设与定制开发一站式解决方案 中企动力
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
Laravel如何使用.env文件管理环境变量?(最佳实践)
如何快速生成可下载的建站源码工具?
iOS发送验证码倒计时应用
Swift中swift中的switch 语句
如何用5美元大硬盘VPS安全高效搭建个人网站?
上一篇:《每刻报销》查看已完成报销方法
上一篇:《每刻报销》查看已完成报销方法

