最佳选择是通过将“enableKeys”选项设置为false来禁用shadowbox中的键盘导航快捷方式(请参阅this page)。
另外,你可以做什么罗比建议和修改shadowbox.js文件,但只有这样做,如果你需要有阴影盒键盘导航。我认为你要搜索的代码块,并修改它,使它只取消,如果其中一个快捷方式,使用默认的事件(我已经添加了一些换行和缩进):
var handleKey=function(e){
var code=SL.keyCode(e);
SL.preventDefault(e);
if(code==81||code==88||code==27){
SB.close()
}else{
if(code==37){
SB.previous()
}else{
if(code==39){
SB.next()
}else{
if(code==32){
SB[(typeof slide_timer=="number"?"pause":"play")]()
}
}
}
}
};
我认为你可以改变它看起来更像是这样的:
var handleKey=function(e){
switch(SL.keyCode(e)) {
case 81:
case 88:
case 27:
SB.close()
SL.preventDefault(e);
break;
case 37:
SB.previous()
SL.preventDefault(e);
break;
case 39:
SB.next()
SL.preventDefault(e);
break;
case 32:
SB[(typeof slide_timer=="number"?"pause":"play")]()
SL.preventDefault(e);
break;
}
};
这可以防止太极拳事件处理吞咽,它不关心任何按键动作。