我有一个导航菜单,根据用户点击的项目,我想向他们展示一个div,现在我的问题是,当他们点击一个新菜单时,当前div需要再次隐藏,但我无法看到如何通过var传递?
$(document).ready(function () {
$('.submenu > li > a').click(function () {
$('#' + lastClicked).hide(); // hides previous div
var menu = $(this).prop('id') + "_view";
$('#news').hide();
$('#' + menu).toggleClass("hidden");
var lastClicked = menu;
});
});
我意识到这是因为我没有通过lastClicked
,但我该怎么办呢?
当使用toggleClass时,我发现只有传入属性id是通过做'#'+菜单,这是正确的吗?
答案 0 :(得分:1)
在更全局的范围内定义lastClicked ...
$(document).ready(function(){
var lastClicked = '';
$('.submenu > li > a').click(function(){
$('#'+lastClicked).hide(); // hides previous div
var menu = $(this).prop('id') +"_view";
$('#news').hide();
$('#'+menu).toggleClass("hidden");
lastClicked = menu;
});
});