javascript - 为什么 jQuery remove() 在这种情况下不起作用?

标签 javascript jquery dom

我试图将 Canvas 元素添加到 DOM 中,然后在设定的时间后将其删除。 Killbox() 函数被调用,但元素并未被删除。我相信我的语法是正确的,并且删除动态添加的 DOM 元素存在一些根本问题。

//con 是 console.log() 的缩写

function spawnCanvas(e) {
   con(e);
   var boxheight=50;
   var boxwidth=50;   
   var xpos = e.clientX - boxwidth/2;
   var ypos = e.clientY - boxheight/2;
   var id = xpos.toString() + ypos.toString();
   con("id:" + id);
   var tag = "<canvas width='" + boxwidth +
             "' height='" + boxheight +
             "' style='position:absolute; border:1px solid #000; left:" + 
             xpos + "px; top:" + ypos + "px;' id='" + id + "'></canvas>";
   con(tag);
   var t = $(tag);
   $("body").append(t);
   var p = setTimeout("killbox(" + id + ")", 1500);


}


function killbox(id){
    con("in killbox. id:" + id);
    $('#id').remove();

}

最佳答案

killbox 中,您将删除具有文字 id id 的元素。相反尝试;

$('#' + id).remove();

以上将删除具有“id”变量设置的 id 的元素。

关于javascript - 为什么 jQuery remove() 在这种情况下不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3484301/

相关文章:

javascript - webpack 通过插件在编译前添加文件

javascript - 如何将数据从子组件(子组件有自己的状态)传递给父组件?

javascript - 通过 DOM 加载页面搜索

javascript - 更改 typescript 断点后无法正确设置,并且 main-client.js 不断将自身加载到 Visual Studio 2017 中

javascript - 想要获取标签但 View 中没有显示任何内容

javascript - 使用 JavaScript 滚动溢出的 DIV

javascript - 属性符合我的值(value)

javascript - jquery忽略子元素

PHP DOM 解析所有文本节点

javascript - 当appendChild(img)时参数1不是 'Node'类型