var isPressed =0;
document.body.onkeypress = function(evt)
{
evt = evt || window.event;
if (evt.keyCode!=='undefined') {
// Do your stuff here
isPressed = 1;
console.log(isPressed);//Here it gives 1
}
//return isPressed;
}
result = navigator.appVersion +"|"+n+"|"+getStyle(mydiv,'opacity')+"|"+history.length+"|"+metarefesh+"|"+hasFocus+"|"+navigator.platform+"|"+parent.top.document.referrer+"|"+activexenable+"|"+javaEnabled+"|"+hasFlash+"|"+navigator.plugins.length+"|"+ hasMouseMoved+"|"+isClicked +"|"+**isPressed**+"|"+isresized+"|"+isScrolled+"|"+getStyle(mydiv,'zIndex');
console.log(result); console.log(isPressed)//即使我按下了一个键并将其更改为1,它也会给出零。范围界定问题Javascript
如果我在if循环中执行console.log(isPressed),它将起作用。它是一个我不知道的范围问题。请帮助。
在此先感谢
这与范围界定无关。只是在事件处理程序之外的'console.log(isPressed)'在按键之前执行,并且这段代码对我来说没有意义。另外'if'不是一个循环,它是一个条件表达式。如果你想在按下按键之后执行某些操作,请在事件处理程序中执行该操作,或者从事件处理程序调用该操作。 – PSL
@PSL谢谢。你可以解释一下代码。 –