【发布时间】:2019-11-05 19:24:09
【问题描述】:
也就是说,使用 jQuery,我想通过该 div 上的事件侦听器来删除该 div。它似乎有效,但它让我有一种从我身下拉出地毯的下沉感觉。这是小提琴和下面的代码。
关于这是一个重复问题的建议不适用。我问的不仅仅是删除侦听器,而是查询一个元素,然后在该查询的条件下删除该元素。
https://jsfiddle.net/pkellner99/wtkv7f31/
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Title</title>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
</head>
<body>
<script type="application/javascript">
$("body").prepend(
`<div id="someguidid">
<img src="https://apod.nasa.gov/apod/image/1904/FairbairnCROSSTOCARINA.jpg"/>
</div>
`
);
$("#someguidid").click(function() {
$("#someguidid").remove("#someguidid");
});
</script>
</body>
</html>
【问题讨论】:
-
@Herohtar,这篇文章暗示我愿意(但需要注意的是浏览器会处理错误代码)。下面发布的答案发布了一个答案,说我所做的“非常好”。想法?
-
如果您阅读更多和其他答案,您会发现主要是较旧的浏览器有问题。如果您的网站不支持旧版浏览器,这不是问题,因为现代浏览器会处理它。
-
在删除元素之前只需 remove any event listeners。
标签: javascript jquery