Javascript 按下esc键时是否有办法滚动到顶部?

Javascript 按下esc键时是否有办法滚动到顶部?,javascript,html,Javascript,Html,如何使其在按下esc键时滚动到顶部?我试着用 <a name="top"></a> <p>some text here.../p> <a href="#top" id="backtotop">hi</a> <script> var input = document.getElementById("body"); input.addEvent

如何使其在按下esc键时滚动到顶部?我试着用

<a name="top"></a>
<p>some text here.../p>
<a href="#top" id="backtotop">hi</a>
<script>
var input = document.getElementById("body");
input.addEventListener("keyup", function(event) {
  if (event.keyCode === 27) {
   event.preventDefault();
   document.getElementById("backtotop").click();
  }
});
</script>
但它不起作用。如果有人能帮我修改代码,那就太好了

只需使用document.body.scrollTop=0即可滚动到页面顶部。根据实际具有滚动条的元素,它也可以是document.documentElement.scrollTop=0

例如:

var输入=document.getElementByIdbody; input.addEventListenerkeyup,functionevent{ 如果event.keyCode==27{ 违约事件; document.documentElement.scrollTop=0; } }; 输入{ 位置:相对位置; 顶部:200px; } 顶部 只需使用document.body.scrollTop=0即可滚动到页面顶部。根据实际具有滚动条的元素,它也可以是document.documentElement.scrollTop=0

例如:

var输入=document.getElementByIdbody; input.addEventListenerkeyup,functionevent{ 如果event.keyCode==27{ 违约事件; document.documentElement.scrollTop=0; } }; 输入{ 位置:相对位置; 顶部:200px; } 顶部 document.onkeydown=函数keypressevent{ 如果keyPressEvent&&keyPressEvent.key&&keyPressEvent.key==Escape | | keyPressEvent.key==Esc&&keyPressEvent.keyCode==27{ 控制台。记录“按下退出键!”; //把你的逻辑放在这里 document.body.scrollTop=0; } }; 退出单击事件 document.onkeydown=函数keypressevent{ 如果keyPressEvent&&keyPressEvent.key&&keyPressEvent.key==Escape | | keyPressEvent.key==Esc&&keyPressEvent.keyCode==27{ 控制台。记录“按下退出键!”; //把你的逻辑放在这里 document.body.scrollTop=0; } };
Escape Click Event我正在尝试使其在按下esc键时滚动到顶部,如下图所示?如果event.keyCode==27{document.body.scrollTop=0};差不多。查看我的编辑。我放了一个片段来说明这一点。很高兴我能帮上忙,@EricPan我正在尝试这样做,当我按下esc键时,它会像这样滚动到顶部?如果event.keyCode==27{document.body.scrollTop=0};差不多。查看我的编辑。我放了一个片段来说明它。很高兴我能提供帮助,@EricPan您可能会发现在浏览器中查看开发工具控制台会帮助您找到一些错误,例如,您使用getElementById,但没有具有该id的元素。您可能会发现在浏览器中查看开发工具控制台会帮助您找到一些错误,例如,您使用getElementById,但没有具有该id的元素。。。当我点击esc@EricPan时,什么也没发生,我在本地机器上测试过!答案已更新。请再查一遍。嗯。。。当我点击esc@EricPan时,什么也没发生,我在本地机器上测试过!答案已更新。请再次检查。
document.body.addEventListener('keypress', function(e) {
  if (e.key == "Escape") {
    document.body.scrollTop = 0;
  }
});