JavaScript Konami Code 實(shí)現(xiàn)代碼
登錄 facebook.com ,點(diǎn)擊你首頁的任何地方,鍵盤輸入 Up, Up, Down, Down, Left, Right, Left, Right, B, A, Enter 后,再點(diǎn)擊頁面或滾動一下滾動條,你會發(fā)現(xiàn)特殊的變化(如下圖),嘿嘿 ^^

玩過“魂斗羅”的朋友,肯定一眼就能看出輸入的字符原來就是“魂斗羅”中的“秘技”。其實(shí)“秘技”的術(shù)語叫 Konami Code,詳細(xì)見圖示:

那如何用 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 的方法還是冗余了點(diǎn),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");
}
相關(guān)文章
用JS實(shí)現(xiàn)根據(jù)當(dāng)前時間隨機(jī)生成流水號或者訂單號
本文通過實(shí)例代碼給大家介紹了基于JS實(shí)現(xiàn)根據(jù)當(dāng)前時間隨機(jī)生成流水號或者訂單號的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-05-05
JavaScript性能陷阱小結(jié)(附實(shí)例說明)
JavaScript陷阱太多,因此我們得步步為營,下面這些點(diǎn),相信很多同學(xué)都會遇到,希望朋友們多注意下。JavaScript陷阱太多,因此我們得步步為營,下面是一些常見的影響性能的陷阱。2010-12-12
在網(wǎng)頁里看flash的trace數(shù)據(jù)的js類
我的js類jdhcn.js中的一個flashDebug方法2009-01-01
微信小程序?qū)Ш綑诟S滑動效果的實(shí)現(xiàn)代碼
這篇文章主要介紹了小程序?qū)Ш綑诟S滑動效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值 ,需要的朋友可以參考下2019-05-05
Javascript中eval函數(shù)的詳細(xì)用法與說明
Javascript中eval函數(shù)的詳細(xì)用法與說明...2007-03-03

