if(event.keyCode==13){
menu.style.display = 'none';
title.innerHTML=as[index].innerHTML;
}这样能够正常显示,如果按照下面这样写:if(event.keyCode==13){
menu.style.display = 'none';
title.innerHTML=this.innerHTML;
}把as[index]改成this,文本框里就会显示undefined,求教键盘事件中this指代的是整个文档还是什么?
7 回答
慕神6131772
TA贡献10条经验 获得超6个赞
授人以鱼不如授人以渔,首先这种问题你要想着自己解决,你在this那一块添加一行console.log(this)在控制台打印出来是什么,那它就是什么。因为你的代码不全,所以我也不知道this是啥。如果打印出来了,你不明白为什么就去百度有关js this关键字的相关解析,弄清楚原由。祝你进步。
信者得救
TA贡献22条经验 获得超10个赞
this指向触发此事件的对象。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>test</title> </head> <style type="text/css"> </style> <body> <input type="text" name="" id="test"> <script type="text/javascript"> var test = document.getElementById('test'); test.onkeydown = function(event) { if(event.keyCode === 13){ alert(this.value); } }; </script> </body> </html>
添加回答
举报
0/150
提交
取消