[英]Remove children from parent Element
我的Html:
<html>
<head>
<title>Web Test</title>
<meta charset="utf-8" />
<link href="my.css" rel="stylesheet" as="style" media="all">
</head>
<body>
<header>
<div class="navbar">
<a href="#">LINK</a>
</div>
</header>
<main>
<div class="adv">
<a href="#">LINK</a>
</div>
<div class="content">
Web Test...!
</div>
</main>
<footer>
<a href="#">LINK</a>
</footer>
<script>
$(".content head").remove();
...
</script>
</body>
</html>
我的 JavaScript:
<script>
$("head").remove();
$('header').remove();
$('footer').remove();
$('div.adv').remove();
$('script').remove();
</script>
必须删除以下所有元素:“html”、“head”、“title”、“meta”、“body”、“header”、“footer”、“main”、“script”和“div.adv” .
只有以下元素不应被删除:“div.content”
出去:
<div class="content">
Web Test...!
</div>
在普通 JavaScript 中使用Element.remove() :
const ELS_toRemove = document.querySelectorAll('header, footer');
ELS_toRemove.forEach(EL => EL.remove());
或针对您的选择器进行具体说明:
"body > header, body > footer"
如果你想重新附加一个元素( .content
),同时删除其他元素的内容,也可以使用Element.append() 。 与.outerHTML
相反,它将保留移动元素的所有当前数据和事件。
const EL_content = document.querySelector(".content"); const ELS_toRemove = document.querySelectorAll("body > *"); // Remove desired elements: ELS_toRemove.forEach(EL => EL.remove()); // Add back.content //.append() will preserve all current data and Events on that element document.querySelector("body").append(EL_content);
<html> <head> <title>Web Test</title> <meta charset="utf-8" /> <link href="my.css" rel="stylesheet" as="style" media="all"> </head> <body> <header> <div class="navbar"> <a href="#">LINK</a> </div> </header> <main> <div class="adv"> <a href="#">LINK</a> </div> <div class="content"> Web Test...! </div> </main> <footer> <a href="#">LINK</a> </footer> </body> </html>
您应该将JQuery
添加到head
上的 HTML 代码中。
<script type="text/javascript" src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
不要忘记将您的代码放在 JQuery 导入下方:
<script type="text/javascript" src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("head").remove();
$('header').remove();
$('footer').remove();
$('div.adv').remove();
$('script').remove();
});
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.