当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript Konami Code 实现代码

Javascript
动态生成js类的实现方法
漂亮的提示信息(带箭头)
实时编辑网页网页文字实时编辑,如同TEXTBOX一般
基于逻辑运算的简单权限系统(实现) JS 版
用 javascript 实现的点击复制代码
AutoSave/自动存储功能实现
JQuery 简便实现页面元素数据验证功能
5 cool javascript apps
jQuery使用手册之 事件处理
dojo 之基础篇
dojo 之基础篇(二)之从服务器读取数据
dojo 之基础篇(三)之向服务器发送数据
Ajax一统天下之Dojo整合篇
javascript对象的property和prototype是这样一种关系
this[] 指的是什么内容 讨论
用prototype实现的简单小巧的多级联动菜单
xml 与javascript结合的问题解决方法
tbody元素支持嵌套的注意方法
推荐dojo学习笔记
JavaScript判断两种格式的输入日期的正确性的代码

Javascript 中的 JavaScript Konami Code 实现代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 421 ::
收藏到网摘: n/a

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

Facebook 上有一个彩蛋

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

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");
}