我有以下
$(document).ready(
function() {
$("#click").click(function() {
$("#top").toggle();
});
});
<div id="click"><img src="/files/images/x.jpg" alt="x"/>Click to open</div>
<div id="top"Some information></div>
我想要的是div在点击时保持打开状态或再次重新加载页面。 有没有办法做到这一点?
答案 0 :(得分:1)
<script>
$(document).ready(
function() {
$("#click").click(function() {
$("#top").show();
});
});
</script>
<div id="click"><img src="/files/images/x.jpg" alt="x"/>Click to open</div>
<div id="top" style="display: none;"> Some information</div>
即使您点击#click两次或多次,Top-Div也会保持打开状态。
答案 1 :(得分:1)
根据您的要求,我猜你需要使用cookie。如果弹出窗口在单击事件触发器上打开或关闭,则设置带有标志的cookie,如果值已设置为打开,则检查变量是否为变量,然后触发弹出打开操作,或者保持关闭状态。
答案 2 :(得分:0)
不是调用toggle函数而是向div添加一个类(例如open)。使用CSS add display:none; div和display:block;到开放的班级。
<script>
$(document).ready(
function() {
$("#click").click(function() {
$("#top").addClass('opened');
});
});
</script>
<style>
#top { display: none; }
#top.opened { display: block; }
</style>
<div id="click"><img src="/files/images/x.jpg" alt="x"/>Click to open</div>
<div id="top"> Some information</div>
答案 3 :(得分:0)
使用toogle,您将在第二次点击时将其关闭。打开第三个等等。只需将其更改为show()。
$("#top").show();
关于在刷新页面时保持打开状态,您可以使用本地存储,cookie或任何客户端,但它将仅保留在当前浏览器中。否则,您必须通过AJAX请求将状态存储到服务器并获取值。