我有这个 HTML 代码:
<div class="show_menu" <?php echo $show_menu; ?>><a>Show Menu</a></div>
<div class="hide_menu" <?php echo $hide_menu; ?>><a>Hide Menu</a></div>
<div id="nav">
menu code here...
</div>
PHP:
<?php
if($_SESSION["integradigital.co.uk"]["menu_state"] == 'visable')
{
$show_menu = 'style="display:none;"';
$hide_menu = 'style="display:block;"';
$page_cont = '';
$nav = 'style="display:block;"';
}
elseif($_SESSION["domain.co.uk"]["menu_state"] == 'hidden')
{
$show_menu = 'style="display:block;"';
$hide_menu = 'style="display:none;"';
$page_cont = 'width:100%;';
$nav = 'style="display:none;"';
}
elseif($_SESSION["domain.co.uk"]["menu_state"] == '')
{
$show_menu = 'style="display:none;"';
$hide_menu = 'style="display:block;"';
$page_cont = '';
$nav = 'style="display:block;"';
}
?>
和JS代码:
<script type="text/javascript.php">
$('.show_menu').click(function () {
$('#nav').toggle();
$("#page_cont").css("margin-left", "200px");
$(".hide_menu").css("display", "block");
$(".show_menu").css("display", "none");
jQuery('#div_session_write').load('headervertical.php?menu_state=visable');
});
$('.hide_menu').click(function () {
$('#nav').toggle();
$("#page_cont").css("margin-left", "0");
$(".hide_menu").css("display", "none");
$(".show_menu").css("display", "block");
jQuery('#div_session_write').load('headervertical.php?menu_state=hidden');
});
</script>
因此,当您单击隐藏菜单链接时,nav div 将隐藏并设置一个 session 变量,因此当页面刷新时,菜单将保持隐藏状态,当用户单击显示菜单时也是如此。
当你点击隐藏菜单/显示菜单时它没有做任何事情,我无法弄清楚为什么
最佳答案
如果您有两个不同的按钮用于打开和关闭菜单,请使用显示/隐藏而不是切换“#nav”
session_start() 在哪里?
关于php - javascript点击时隐藏div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18559073/