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
提交
取消
