JavaScript Konami Code 实现代码


Posted in Javascript onJuly 29, 2009

在 Facebook 上有一个彩蛋:
登录 facebook.com ,点击你首页的任何地方,键盘输入 Up, Up, Down, Down, Left, Right, Left, Right, B, A, Enter 后,再点击页面或滚动一下滚动条,你会发现特殊的变化(如下图),嘿嘿 ^^

JavaScript Konami Code 实现代码

玩过“魂斗罗”的朋友,肯定一眼就能看出输入的字符原来就是“魂斗罗”中的“秘技”。其实“秘技”的术语叫 Konami Code,详细见图示:

JavaScript Konami Code 实现代码

那如何用 JavaScript 也在自己的页面上添加一个类似的彩蛋呢?
Abhi 在 《Konami Code on Facebook : How to implement it on your site》 一文中提供了大体思路:

var $ = { 
enabled: false, 
tmp: Array(), 
_konamiCode: Array(65,66,39,37,39,37,40,40,38,38), 
init: function() { 
this.tmp = Array(65,66,39,37,39,37,40,40,38,38); 
}, 
konamiCode: function(e) { 
if(!this.enabled) { 
var t = this.tmp.pop(); 
if((e.keyCode-t) == 0) { 
if(this.tmp.length == 0) { 
this.enabled = true; 
} 
} else { 
this.init(); 
} 
} else { 
this.action(); 
} 
}, 
// Change the action() function to whatever you want to 
action: function() { 
//alert("Konami Code Activated"); 
} 
}

不过 Abhi 的方法还是冗余了点,Jan Jarfalk 在留言中提供了一个短小精悍的代码:
var k=[]; 
function(e){ 
k.push(e.keyCode); 
if(k.toString().indexOf("38,38,40,40,37,39,37,39,66,65")>=0) { 
//alert("Konami Code Activated"); 
}
Javascript 相关文章推荐
js实现点小图看大图效果的思路及示例代码
Oct 28 Javascript
使用javascript为网页增加夜间模式
Jan 26 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
Sep 03 Javascript
JavaScript使用RegExp进行正则匹配的方法
Jul 11 Javascript
jQuery实现form表单元素序列化为json对象的方法
Dec 09 Javascript
详解Vue使用 vue-cli 搭建项目
Apr 20 Javascript
基于wordpress的ajax写法详解
Jan 02 Javascript
使用百度地图实现地图网格的示例
Feb 06 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
May 21 Javascript
浅谈layui 数据表格前后台传值的问题
Sep 12 Javascript
Webpack按需加载打包chunk命名的方法
Sep 22 Javascript
浅谈layui 表单元素的选中问题
Oct 25 Javascript
JavaScript 获取事件对象的注意点
Jul 29 #Javascript
javascript CSS画图之基础篇
Jul 29 #Javascript
JQuery 表格操作(交替显示、拖动表格行、选择行等)
Jul 29 #Javascript
JavaScript 设计模式学习 Factory
Jul 29 #Javascript
JQuery UI皮肤定制
Jul 27 #Javascript
JavaScript 设计模式学习 Singleton
Jul 27 #Javascript
xml 封装与解析(javascript和C#中)
Jul 26 #Javascript
You might like
锁定年轻人的双倍活力 星巴克推出星倍醇即饮浓咖啡
2021/03/03 咖啡文化
php获取mysql数据库中的所有表名的代码
2011/04/23 PHP
写出高质量的PHP程序
2012/02/04 PHP
php 的加密函数 md5,crypt,base64_encode 等使用介绍
2012/04/09 PHP
免费手机号码归属地API查询接口和PHP使用实例分享
2014/04/10 PHP
10个超级有用值得收藏的PHP代码片段
2015/01/22 PHP
php中switch与ifelse的效率区别及适用情况分析
2015/02/12 PHP
详解PHP防止直接访问.php 文件的实现方法
2017/07/28 PHP
DHTML Slide Show script图片轮换
2008/03/03 Javascript
JavaScript 变量命名规则
2009/09/23 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
jquery图形密码实现方法
2015/03/11 Javascript
浅谈javascript中call()、apply()、bind()的用法
2015/04/20 Javascript
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
2017/04/03 jQuery
JavaScript之iterable_动力节点Java学院整理
2017/06/29 Javascript
vue+swiper实现组件化开发的实例代码
2017/10/26 Javascript
vue使用中的内存泄漏【推荐】
2018/07/10 Javascript
解决vue 单文件组件中样式加载问题
2019/04/24 Javascript
vue中利用three.js实现全景图的完整示例
2020/12/07 Vue.js
小结Python用fork来创建子进程注意事项
2014/07/03 Python
在Python中封装GObject模块进行图形化程序编程的教程
2015/04/14 Python
Python+matplotlib实现填充螺旋实例
2018/01/15 Python
Python利用itchat库向好友或者公众号发消息的实例
2019/02/21 Python
Python中zip()函数的解释和可视化(实例详解)
2020/02/16 Python
使用K.function()调试keras操作
2020/06/17 Python
PyTorch中model.zero_grad()和optimizer.zero_grad()用法
2020/06/24 Python
Python编写万花尺图案实例
2021/01/03 Python
微软瑞士官方网站:Microsoft瑞士
2018/04/20 全球购物
日本快乐生活方式购物网站:Shop Japan
2018/07/17 全球购物
ESDlife健康生活易:身体检查预订、搜寻及比较
2019/05/10 全球购物
俄罗斯玩具、儿童用品、儿童服装和鞋子网上商店:MyToys.ru
2019/10/14 全球购物
摩飞电器俄罗斯官方网站:Morphy Richards俄罗斯
2020/07/30 全球购物
自学考试自我鉴定范文
2013/09/26 职场文书
小学教研工作制度
2014/01/15 职场文书
《钱学森》听课反思
2014/03/01 职场文书
Python可视化学习之seaborn调色盘
2022/02/24 Python