2

我有一个页面,我在页面加载时 appendTo 一个 div。在用户可以通过单击另一个元素来关闭此 div 之后。

var overlay = jQuery('<div id="start">111111111</div>');
overlay.appendTo(document.body);

$("#go").click(function() {
    $(document).remove("#start");
});

不幸的是,它确实附加了 div,但没有删除......我错过了什么?

4

2 回答 2

2

如何先找到元素,然后调用 remove 代替:

$('#start').remove();

此外,这可以稍微改变一下:

$('<div>',{'id':'start'}).text('111111111').appendTo('body');

$('#go').on('click',function(e){
  $('#start').remove();
});

除非您使用的是过时的 jQuery 版本,.on()否则应该使用绑定来代替(请参阅文档)。

如果你想将它存储为overlay,你也可以使用它(重新引用它):

var overlay = $('<div>',{'id':'start'}).text('111111111').appendTo('body');
$('#go').on('click',function(e){
  overlay.remove();
});

上面的例子

于 2012-09-20T01:11:57.383 回答
2

工作演示 http://jsfiddle.net/7y6bY/

API:http ://api.jquery.com/remove/

代码

var overlay = jQuery('<div id="start">111111111</div>');
overlay.appendTo(document.body);

$("#go").click(function() {
    $("#start").remove();
});​
于 2012-09-20T01:13:31.267 回答