// HTML 部分,为了示例,我们假设有一个ID为"myDiv"的div元素
// <div id="myDiv" style="width: 100px; height: 100px; background-color: red; position: absolute; left: 50px; top: 50px;"></div>
document.addEventListener('keydown', function(event) {
let div = document.getElementById('myDiv');
let scale = parseFloat(div.style.transform.replace(/[^0-9.]/g, '')) || 1; // 获取当前缩放比例,默认1
switch (event.key) {
case 'ArrowUp':
div.style.top = `${parseInt(div.style.top) - 10}px`; // 上移
break;
case 'ArrowDown':
div.style.top = `${parseInt(div.style.top) + 10}px`; // 下移
break;
case 'ArrowLeft':
div.style.left = `${parseInt(div.style.left) - 10}px`; // 左移
break;
case 'ArrowRight':
div.style.left = `${parseInt(div.style.left) + 10}px`; // 右移
break;
case '=':
case '+':
scale *= 1.1; // 放大
div.style.transform = `scale(${scale})`;
break;
case '-':
if (scale > 0.1) scale /= 1.1; // 缩小,但保留一个最小缩放比例
div.style.transform = `scale(${scale})`;
break;
case 'r': // 假设'r'键用于改变颜色
div.style.backgroundColor = getRandomColor(); // 调用函数获取随机颜色
break;
default:
break;
}
});
// 辅助函数:生成随机颜色
function getRandomColor() {
let letters = '0123456789ABCDEF';
let color = '#';
for (let i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
}
这段JavaScript代码监听键盘事件,根据按下的键移动、缩放或改变一个具有特定ID的div元素的位置、大小和颜色。请注意,为了简化示例,我假设了div的初始样式,并且没有包括完整的HTML结构。此外,缩放是通过CSS的`transform`属性实现的,而颜色改变则是通过调用一个生成随机颜色的函数`getRandomColor`来实现的。在实际应用中,您可能需要根据具体的HTML结构和需求对代码进行适当的调整。