Jquery 按键时更改按钮的颜色
我想改变一件衣服的颜色Jquery 按键时更改按钮的颜色,jquery,html,css,Jquery,Html,Css,我想改变一件衣服的颜色 <input type='button' class='button'> 对于enter键,我尝试了以下jQuery代码: $('.button').keypress(function(e){ if(e.which == 13){ $(this).css('background-color','#FFF') } }); 但是这不起作用,现在背景在点击回车键后仍然是白色的。但是,我只希望在有人按enter键时背
<input type='button' class='button'>
对于enter键,我尝试了以下jQuery代码:
$('.button').keypress(function(e){
if(e.which == 13){
$(this).css('background-color','#FFF')
}
});
但是这不起作用,现在背景在点击回车键后仍然是白色的。但是,我只希望在有人按enter键时背景变成白色。我怎样才能做到这一点呢?试试这个
.clicked{
background:#fff !important;
}
$('.button').keydown(function(e){
if(e.which == 13){
$(this).addClass('clicked');
}
e.preventDefault();
});
使用keypress/keyup组合切换颜色:
$(“按钮”).keydown(功能(e){
//设置按键按下时的颜色。。。
如果(e.which==13){
$(this.css(“背景色”、“红色”);
}
});
$(“按钮”).keyup(函数(){
//当任何关键点被提升时移除颜色。。。
$(this.css(“背景色”);
});代码>
试验
请尝试以下代码
$('.button').keypress(function(e){
if(e.which == 13){
$(this).css('background-color','#FFF');
}
});
$('.button').keyup(function(e){
if(e.which == 13){
$(this).css('background-color','');
}
});
keydown
而不是keypress
?@RGraham如果我用keydown替换keypress,它将不起作用。与上面描述的问题相同。但是我需要删除单击了keyup的类或其他东西,对吗?不需要删除。。或$(this).removeClass('inactive').addClass('clicked');非常感谢。我认为您在$(“.button”)中缺少了一个点。@Adam这是任何
元素的选择器:).button
将选择任何带有class=“button”
$('.button').keypress(function(e){
if(e.which == 13){
$(this).css('background-color','#FFF');
}
});
$('.button').keyup(function(e){
if(e.which == 13){
$(this).css('background-color','');
}
});