javascript - 使用鼠标悬停删除生成的输入区域
问题描述
这是我的代码:
setInterval(function(){
let fklas = document.createElement("input");
fklas.setAttribute('type', 'text');
let randomX = 10
let randomY = 10
fklas.style.top= randomX + "%"
fklas.style.left= randomY + "%"
document.body.append(fklas);
},100)
function mouseOver() {
console.log(this.id);
this.parentNode.removeChild(this);
}
var list = document.getElementsByTagName("input");
for (var i = 0; i < list.length; ++i) {
list[i].addEventListener("mouseover", mouseOver);
}
我想用鼠标悬停删除输入区域。应该像游戏一样。我的删除功能不起作用。有人可以解决这个问题吗?
爱。
解决方案
您需要将其附加到每个生成的元素。
setInterval(function() {
let fklas = document.createElement("input");
fklas.setAttribute('type', 'text');
let randomX = 10
let randomY = 10
fklas.style.top = randomX + "%"
fklas.style.left = randomY + "%"
fklas.addEventListener("mouseover", mouseOver) // <-----
document.body.append(fklas);
}, 100)
function mouseOver() {
console.log(this.id);
this.parentNode.removeChild(this);
}
// <-- there are no element generated at this point so your for loop is effectively no-op
*我省略了样式部分,因为它是不同的问题。
推荐阅读
- c# - 删除级联防止行/实体之间的循环引用
- mysql - 从另一列创建一列,SQL 增加 3%
- amazon-web-services - CloudFormation 未知标签!
- c++ - Constexpr CRTP destructor
- google-chrome-extension - 将后台脚本中的“标签”标识为您自己的“新标签”页面,无需“标签”权限
- python - 如何在 Cython 中将大型 malloc 数组返回或保存为 Python 对象?
- r - 如何在 ggplot 中使用不同的数据框创建线型图例
- oracle - 从 UPDATE 子查询调用 Oracle 关联数组会导致 PLS-00201 错误
- php - 显示包含所有类别列表的 ACF 类别分类字段
- rust - 在 Rust `Default` 实现中只设置一个字段