Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按某些键使某物出现_Javascript - Fatal编程技术网

Javascript 按某些键使某物出现

Javascript 按某些键使某物出现,javascript,Javascript,我上面有一个例子来说明我的意思,但我正在寻找更多样化的东西。就像在一定时间内键入单词“example”一样,set div将显示并保留,直到再次键入“example”。我没有太多的JavaScript知识,所以我不知道如何实现这一点。这是我做的一个实现。这绝不是最好的实现,而且我确信存在一个bug。有人担心,当用户键入缓冲区时,缓冲区将被清除,但我相信您可以找到解决方法。但它应该给你足够的想法继续下去 // Stores keys pressed in order var buffer = []


我上面有一个例子来说明我的意思,但我正在寻找更多样化的东西。就像在一定时间内键入单词“example”一样,set div将显示并保留,直到再次键入“example”。我没有太多的JavaScript知识,所以我不知道如何实现这一点。

这是我做的一个实现。这绝不是最好的实现,而且我确信存在一个bug。有人担心,当用户键入缓冲区时,缓冲区将被清除,但我相信您可以找到解决方法。但它应该给你足够的想法继续下去

// Stores keys pressed in order
var buffer = [];

// Every keypress shove the key in a buffer and call the compleyKeyCheck() function which will assess the buffer
$(document).keypress(function(ev) {
    buffer.push(ev.which);
    console.log("Just pushed " + buffer[buffer.length - 1]);
    complexKeyListen('example');
});

// Compares the buffer to the required string
function complexKeyListen(string){
    var i;
    for(i = 0; i < string.length; i++){
        console.log("Char in buffer " + buffer[i]);
        if (buffer[i] !== string.charCodeAt(i)) { 
            break;
        }
    }
    if(i == string.length){
        $('#mydiv').toggle();
        buffer= [];
    }
}

// Auto clear the buffer every ten seconds.
setInterval(function(window){
    console.log('Cleared buffer');
    buffer = [];}
,10000);
//存储按顺序按下的键
var缓冲区=[];
//每次按键都会将键推入缓冲区并调用compleyKeyCheck()函数,该函数将评估缓冲区
$(文档)。按键(功能(ev){
缓冲推送(ev.WHIT);
log(“刚刚按下”+buffer[buffer.length-1]);
complexKeyListen(“示例”);
});
//将缓冲区与所需字符串进行比较
函数complexKeyListen(字符串){
var i;
对于(i=0;i
你真的只是在寻找Konami代码吗?对不起,我不知道这是什么意思,但如果你参考的是我认为Facebook在2009年左右所做的,你按下某些按钮“示例”比是发生。@Deervious我在答案中为你准备了一些东西。嘿,我将尝试一下这段代码,看看是否可以让它工作,同时感谢你花时间回复并分享你的代码。我真的很感激你抽出时间来帮助我。嘿,谢谢你,我知道了,我现在开始工作了。非常感谢,我希望我能给你一个投票,但显然我需要15个代表。如果我得到15个代表,我一定会回来报答你的帮助!这里有一个替代提琴,它在没有按下任何键的1秒后清除que。这个想法和Cygwinnian几乎一样@马文嘿,谢谢你的帮助,我也会试试你的代码@马文斯密特不错。我希望有人会来修补它:)
// Stores keys pressed in order
var buffer = [];

// Every keypress shove the key in a buffer and call the compleyKeyCheck() function which will assess the buffer
$(document).keypress(function(ev) {
    buffer.push(ev.which);
    console.log("Just pushed " + buffer[buffer.length - 1]);
    complexKeyListen('example');
});

// Compares the buffer to the required string
function complexKeyListen(string){
    var i;
    for(i = 0; i < string.length; i++){
        console.log("Char in buffer " + buffer[i]);
        if (buffer[i] !== string.charCodeAt(i)) { 
            break;
        }
    }
    if(i == string.length){
        $('#mydiv').toggle();
        buffer= [];
    }
}

// Auto clear the buffer every ten seconds.
setInterval(function(window){
    console.log('Cleared buffer');
    buffer = [];}
,10000);