[英]Completely remove a div when user navigates back to the website
我在一个网站上工作,可以说我们有一个包含2个div的index.html。
<div id="top">
Some Content
</div>
<div id="content">
Some Content
<a href="page.html"></a>
</div>
内容ID div具有锚标记。 当我单击锚标记时,page.html会加载到同一标签中。 现在,当我按浏览器的后退按钮时,我希望id不存在的div出现。 实际上,我只希望当某人首次访问该网站时,div顶部应该出现,然后再也不会出现,即使有人跟随链接并尝试返回。 虽然,当有人再次在新标签页中打开网站时,该网站应该重新出现(顶部div和相同的内容)。 可能吗?
JavaScript可以做到这一点,但最好在服务器端完成。
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<script>
var content, body;
document.addEventListener("DOMContentLoaded", function() {
content = document.getElementById("content");
body = document.getElementsByTagName("body")[0];
if (localStorage.getItem("wasHere") !== null) {
body.removeChild(content);
} else {
localStorage.setItem("wasHere", "true");
}
});
</script>
</head>
<body>
<div id="top">
Some Content
</div>
<div id="content">
<!-- You need to put text inside links for them to show -->
<a href="page.html">Some Content</a>
</div>
</body>
</html>
该解决方案的问题在于localStorage
易于修改且不可靠。 因此,再次,您应该真正使用服务器端解决方案。 不过,如果您需要它,就在这里。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.