加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
1.html 2.14 KB
一键复制 编辑 原始数据 按行查看 历史
李依诚 提交于 2023-10-09 10:47 . 更新
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body {
width: 100%;
height: 100%;
position: relative;
}
div {
width: 200px;
height: 200px;
border: 1px solid red;
position: absolute;
left: 0px;
top: 0px;
}
</style>
</head>
<body>
<div id="myDiv"></div>
<script>
let div = document.querySelector('div')
moveDivWithArrows(div);
function moveDivWithArrows(div) {
const stepSize = 20; // 每次移动的步长
const screenWidth = window.innerWidth;
const screenHeight = window.innerHeight;
let left = 0;
let top = 0;
document.addEventListener('keydown', function (event) {
const keyCode = event.keyCode;
switch (keyCode) {
case 37: // 左箭头键
left -= stepSize;
if (left < 0) left = 0; // 防止左侧超出屏幕
break;
case 38: // 上箭头键
top -= stepSize;
if (top < 0) top = 0; // 防止顶部超出屏幕
break;
case 39: // 右箭头键
left += stepSize;
if (left > screenWidth - div.offsetWidth) left = screenWidth - div.offsetWidth; // 防止右侧超出屏幕
break;
case 40: // 下箭头键
top += stepSize;
if (top > screenHeight - div.offsetHeight) top = screenHeight - div.offsetHeight; // 防止底部超出屏幕
break;
default:
break;
}
div.style.left = left + 'px';
div.style.top = top + 'px';
console.log('触发了');
});
}
</script>
</body>
</html>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化