Javascript 检测shift键输入事件
我需要检测一个按住5秒的shift键条目,并需要执行一些功能 在javascript/JQ中是否可能,其中一个事件标识保持5秒的shift键条目 请帮忙, 提前谢谢。请检查此项 检查这个 这会有用的Javascript 检测shift键输入事件,javascript,jquery,html,Javascript,Jquery,Html,我需要检测一个按住5秒的shift键条目,并需要执行一些功能 在javascript/JQ中是否可能,其中一个事件标识保持5秒的shift键条目 请帮忙, 提前谢谢。请检查此项 检查这个 这会有用的 $(函数(){ var-tmr=0; $(文档).keydown(函数(e){ 如果(e.shiftKey==true) tmr=设置超时(函数(){ $(“#状态”).append(“您按住Shift键5秒钟!”; 清除超时(tmr); }, 5000); }).keyup(功能(e){ 如果(
$(函数(){
var-tmr=0;
$(文档).keydown(函数(e){
如果(e.shiftKey==true)
tmr=设置超时(函数(){
$(“#状态”).append(“您按住Shift键5秒钟!
”;
清除超时(tmr);
}, 5000);
}).keyup(功能(e){
如果(e.shiftKey==false)
清除超时(tmr);
});
});代码>
准备好了…
这就行了
$(函数(){
var-tmr=0;
$(文档).keydown(函数(e){
如果(e.shiftKey==true)
tmr=设置超时(函数(){
$(“#状态”).append(“您按住Shift键5秒钟!
”;
清除超时(tmr);
}, 5000);
}).keyup(功能(e){
如果(e.shiftKey==false)
清除超时(tmr);
});
});代码>
准备好了…
var text\u区域=null;
变量移位键按下持续时间=3*1000;/*5秒*/
var key_down=功能(事件){
如果(event.keyCode==16){
var d=新日期();
if(text_area.attr('data time')==0){
text_area.attr('data time',d.getTime());
}
if((d.getTime()-text\u area.attr('data time'))>=shift\u键\u按\u持续时间){
$(“#事件”)。追加(“事件在:“+d+” ”)触发;
警报(“Bla”);
text_area.attr('data time','0');
}
}
};
var key_up=功能(事件){
text_area.attr('data time','0');
}
$(文档).ready(函数(){
text#u area=$('#textarea');
文本区
.on('keydown',KEYU down)
.on('keyup',KEYU up);
});代码>
活动:
在此文本区域按住shift键3秒钟
var text\u区域=null;
变量移位键按下持续时间=3*1000;/*5秒*/
var key_down=功能(事件){
如果(event.keyCode==16){
var d=新日期();
if(text_area.attr('data time')==0){
text_area.attr('data time',d.getTime());
}
if((d.getTime()-text\u area.attr('data time'))>=shift\u键\u按\u持续时间){
$(“#事件”)。追加(“事件在:“+d+” ”)触发;
警报(“Bla”);
text_area.attr('data time','0');
}
}
};
var key_up=功能(事件){
text_area.attr('data time','0');
}
$(文档).ready(函数(){
text#u area=$('#textarea');
文本区
.on('keydown',KEYU down)
.on('keyup',KEYU up);
});代码>
活动:
在此文本区域按住shift键3秒钟
是,可以使用按键事件。是您需要的东西。您可以将此功能与超时功能配合使用。shift is 16的Keycode
rest您可以找到是的,可以使用按键事件。是你需要的东西,你可以使用超时功能Keycode for shift is 16
rest,你可以找到@TheGreat独裁者哈。。。不客气,兄弟<代码>:)
@伟大的独裁者哈哈。。。不客气,兄弟<代码>:)
@伟大的独裁者检查这个答案too@Thegreatdictator也检查一下这个答案
$(document).on('keydown', function(e)
{
var shifted = e.shiftKey;
var downTime = parseInt( $(this).attr( "data-startTimer") );
console.log( shifted );
if ( shifted && isNaN( downTime ) )
{
console.log( downTime );
$(this).attr( "data-startTimer", new Date().getTime() );
}
});
$(document).on('keyup', function(e)
{
var downTime = parseInt( $(this).attr( "data-startTimer") );
if ( !isNaN( downTime ) )
{
console.log( ( new Date().getTime() - downTime ) );
if ( ( new Date().getTime() - downTime ) >= 5000 )
{
console.log( "yesss" );
alert( "you held shift key for 5 seconds or longer" );
}
}
$(this).attr( "data-startTimer", "null" );
});