JavaScript 实现 Konami Code

2016-02-19 14:37 11 1 收藏

今天给大家分享的是由图老师小编精心为您推荐的JavaScript 实现 Konami Code,喜欢的朋友可以分享一下,也算是给小编一份支持,大家都不容易啊!

【 tulaoshi.com - Web开发 】

在 Facebook 上有一个彩蛋:

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

JavaScript 实现 Konami Code

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

JavaScript 实现 Konami Code

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

那如何用 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");
    }
}

然后在 load 的时候调用 $.init() 方法,在 keydown 的时候调用 $.konamiCode(event) 方法。

不过 Abhi 的方法还是冗余了点,Jan Jarfalk 在留言中提供了一个短小精悍的代码:

// Tweetable Konami code
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");
    }
}

PS:有兴趣的还可以在 Google Reader 上尝试下此“秘技”,一般人我还不告诉他,嘿嘿。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

来源:http://www.tulaoshi.com/n/20160219/1607380.html

延伸阅读
标签: Web开发
在JavaScript中我们需要用到trim的地方很多,但是JavaScript又没有独立的trim函数或者方法可以使用,所以我们需要自己写个trim函数来实现我们的目的。 方案一: 以原型方式调用,即obj.trim()形式,此方式简单且使用方面广泛,定义方式如下: ﹤scriptlanguage=”javascript”﹥ /** *删除左右两端的空格 */ String.prototype.t...
标签: Web开发
这是一个很典型的一个background-position-x的应用。技术含量并不高,但是思想还是值得思考的,证明了DHTML方面有很多东西可以变通的。用背景用map,如果做得更复杂一些,用ajax动态的载入图片的背景,也是一个小型的map了。我不打算在此项深究,因为脚本的速度和效率是有瓶颈的。 预备知识: background-position-x ------------- ...
标签: Web开发
PHP - Html Transfer Code超文本转换码,市面上这东西已经很滥(多)了,不过是这几天自己实践了一下~~~~ 支持 多重嵌套 和 同标签嵌套,混合高亮显示(还有一点小问题) 自我感觉便于修改和扩充~~~~~~~~~~~ ?php /************************************************** *              &nbs...
标签: Web开发
/**  * Find the X position of an object, relative to the viewport  * Code copied from quirksmode.org  * @param obj Object to find x position for  */ function findPosX(obj) { ...
标签: Web开发
碰到一个用javascript实现随机跳转页面实例,发布出来,共同研究下,或许有用哦。 请看下面的实例 html head titlePlease waiting.../title script language="javascript" !-- function urlList(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) {     this[0]=a;     this[1]=b;     thi...

经验教程

770

收藏

95

精华推荐

JavaScript/JS实现页面自动刷新

JavaScript/JS实现页面自动刷新

小漫白羊

javascript 全角转换实现代码

javascript 全角转换实现代码

陡变吧WRI

用javascript实现select的美化

用javascript实现select的美化

会飞的羊9097

微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部