用我的小提琴,我让它在加载时突出显示一个主菜单按钮,并在底部设置了 show() 和 hide() 相应的按钮。
我认为是错误的但无法弄清楚自己是在我的 switch 语句中做$this变量的引用范围的事情。就我而言, $this 指向单击的按钮值,我认为它是类的名称,但在我的 switch 语句中,我不确定是否可以从$this引用 id 名称。我想我的问题是$this在我的场景中具有什么价值?
很高兴看到一个工作示例,可能代码更少,因为我可以看到许多可以简化的重复项。
$('.menu').click(function () {
if ($(this) != $('.highlight')) {
$(this).addClass('highlight')
.siblings('.menu')
.removeClass('highlight');
}
switch ($this) {
case '#dateMenu':
$('.date-chart').show();
$('.jc-chart').hide();
$('.jp-chart').hide();
$('.ws-chart').hide();
break;
case '#jcMenu':
$('.date-chart').hide();
$('.jc-chart').show();
$('.jp-chart').hide();
$('.ws-chart').hide();
break;
case '#jpMenu':
$('.date-chart').hide();
$('.jc-chart').hide();
$('.jp-chart').show();
$('.ws-chart').hide();
break;
case '#wsMenu':
$('.date-chart').hide();
$('.jc-chart').hide();
$('.jp-chart').hide();
$('.ws-chart').show();
break;
}
});