[英]JavaScript change element position on keyboard button press
所以我想在按下键盘按钮时将元素的位置更改 100。
我的代码:
document.addEventListener("keypress", (event) => {
var keyName = event.key;
if (keyName == "s") {
console.log(keyName);
document.getElementById("element").style.top + 100;
};
}, false);
<div id="element">•</div>
代码所做的唯一一件事就是将有关按下的键的日志发送到控制台。
编辑:元素的位置已经是绝对的
position: absolute;
要实现您的目标,您必须执行以下操作:
position: absolute
或position: relative
style.top
是一个setter,所以你必须设置它的值,比如style.top = '100px'
document.addEventListener("keypress", (event) => { const elementToMove = document.getElementById("element"); var keyName = event.key; if (keyName == "s") { elementToMove.style.top = (parseInt(elementToMove.style.top || 0) + 100)+'px'; }; }, false);
<div id="element" style="position: absolute;">•</div>
top CSS 属性参与指定定位元素的垂直位置。 它对非定位元素没有影响。 确保您的元素已定位(绝对、相对、固定、静态等...)。
你的代码在这里有问题: document.getElementById("element").style.top + 100;
应该分配给元素 (+100) 将不起作用。
如果要添加边距,请执行以下操作: document.getElementById("element").style.marginTop = "100px";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.