【发布时间】:2011-12-13 09:44:47
【问题描述】:
所以我有一个网络应用程序,它使用从 A 到 Z 的所有热键。
每个热键都用于一个选项卡。比如:
我有 20 个标签:
#tab1, #tab2, #tab3, #tab4 等。所有选项卡都有一个 .tabs 类。
所以为了让热键起作用,我做了这个:
if (e.keyCode == 65) {$('.tabs:not(#tab1)').hide();$("#tab1").fadeIn();}
if (e.keyCode == 66) {$('.tabs:not(#tab2)').hide();$("#tab2").fadeIn();}
if (e.keyCode == 67) {$('.tabs:not(#tab3)').hide();$("#tab3").fadeIn();}
if (e.keyCode == 68) {$('.tabs:not(#tab4)').hide();$("#tab4").fadeIn();}
if (e.keyCode == 69) {$('.tabs:not(#tab5)').hide();$("#tab5").fadeIn();}
if (e.keyCode == 70) {$('.tabs:not(#tab6)').hide();$("#tab6").fadeIn();}
if (e.keyCode == 71) {$('.tabs:not(#tab7)').hide();$("#tab7").fadeIn();}
//etc till keycode 81 and tab20.
那么,有没有一种更好的优化方式来实现它,这样它就可以用更少的字符编写?因为在每一行我使用了两次相同的 ID .
编辑/注意:抱歉,实际的标签 ID 是随机名称。
谢谢
【问题讨论】:
标签: javascript jquery optimization hotkeys