我在使用 jQuery 和 switchclass 函数时遇到问题。我正在使用 serialscroll 功能来导航我的网站并为此绑定了箭头键。我已经绑定了向下箭头键以通过在类之间制作动画来选择/取消选择元素。但是我遇到的问题是,如果用户在按下向下箭头后快速向左或向右按下,它不允许动画完成并卡住。
function mainselect()
{
setTimeout(function()
{
$(".selectstyle" ).switchClass( "selectstyle", "select", 200);
$(".select" ).switchClass( "select", "selectstyle", 200);
$(".maincontentshrink" ).switchClass( "maincontentshrink", "maincontent", 200);
$(".maincontent" ).switchClass( "maincontent", "maincontentshrink", 200);
return false;
},
250);
}
$(document).keydown(function(e) //keyboard bind
{
if( e.keyCode == 39 ) //right (->)
{
setTimeout(function()
{
// $(".maincontent" ).switchClass( "maincontent", "maincontent", 200 );
$(".maincontentshrink" ).switchClass( "maincontentshrink", "maincontent", 200 );
$(".selectstyle" ).switchClass( "selectstyle", "select", 200 );
$pane.trigger('next');
return false;
},
200);
}
});
$(document).keydown(function(e)
{
if( e.keyCode == 37 ) //left (<-)
{
setTimeout(function()
{
// $(".maincontent" ).switchClass( "maincontent", "maincontent", 200 );
$(".maincontentshrink" ).switchClass( "maincontentshrink", "maincontent", 200 );
$(".selectstyle" ).switchClass( "selectstyle", "select", 200 );
$pane.trigger('prev');
},
200);
}
});
$(document).keydown(function(e)
{
if( e.keyCode == 40 ) //down (\/)
{
mainselect()
}
});
有没有办法禁用其他功能或取消绑定/绑定按键,直到动画完成?