Javascript点击切换
我有一些代码,当用户点击离开侧栏时,侧栏关闭,我如何更改它,当用户点击链接时,侧栏也关闭,以及从侧栏关闭 例如,如果我单击单词Home,它将隐藏侧栏Javascript点击切换,javascript,Javascript,我有一些代码,当用户点击离开侧栏时,侧栏关闭,我如何更改它,当用户点击链接时,侧栏也关闭,以及从侧栏关闭 例如,如果我单击单词Home,它将隐藏侧栏 //在单击外部标题时隐藏侧标题 $body.on('mousedown touchstart click',函数(e){ 如果(!($(e.target).最近('.page\u header\u side').length)和($sideHeader.hasClass('header\u side\u sticked')){ $sideHead
//在单击外部标题时隐藏侧标题
$body.on('mousedown touchstart click',函数(e){
如果(!($(e.target).最近('.page\u header\u side').length)和($sideHeader.hasClass('header\u side\u sticked')){
$sideHeader.removeClass('active-slide-side-header');
$body.removeClass('active-side-header-slide right');
$body.parent().removeClass('html-active-push-header');
变量$toggler=$('.toggle_menu_side');
if(($toggler).hasClass('active')){
$toggler.removeClass('active');
}
}
});
}//侧标题检查
我会将您所有的关闭代码转换为如下函数:
function closeMenu(){
if (!($(e.target).closest('.page_header_side').length) && !($sideHeader.hasClass('header_side_sticked'))) {
$sideHeader.removeClass('active-slide-side-header');
$body.removeClass('active-side-header slide-right');
$body.parent().removeClass('html-active-push-header');
var $toggler = $('.toggle_menu_side');
if (($toggler).hasClass('active')) {
$toggler.removeClass('active');
}
}
});
然后我会把你在菜单链接上的相同处理程序放在正文上。假设您的菜单有一个菜单id
所以你会:
$('body', '#menu a').onClick(function(){
closeMenu();
});
这将向正文以及菜单中的所有a标记添加处理程序。对于给定的代码,这就是我所做的:
//在单击外部标题时隐藏侧标题
$('.scrollbar macosx')。在('click',函数(e)上{
//$sideHeader.removeClass('active-slide-side-header');
//$body.removeClass('active-side-header-slide right');
//$body.parent().removeClass('html-active-push-header');
//如果要继续添加和删除类,请执行以下操作:
//if(($toggler).hasClass('active')){
$('#elementToHide').fadeOut();
//}
});
//侧割台检查
并将它们添加到您的html:
这里是小提琴:我尝试了你的建议,但没有成功,请查看HMTL以了解完整的HTML