我很好奇如何让jQuery事件不会互相干扰。例如,在我的下面的代码中,我希望按钮文本在我将鼠标悬停时变成白色,而当我的鼠标离开按钮时将黑色变回黑色。当我点击按钮时,我希望它变成蓝色。它的工作原理,到一个点如何让事件不会互相干扰
$(document).ready(function() {
$("#food-roulette, #kwik-pix, #crypto, #realtalk").mouseover(function(){
$(this).css('color', 'white');
});
$("#food-roulette, #kwik-pix, #crypto, #realtalk").mouseout(function(){
$(this).css('color', 'black');
});
$(document).on('click','#food-roulette, #kwik-pix, #crypto, #realtalk' ,function(){
$(this).css("color","blue");
});
});
问题就来了,一旦我按一下按钮,它会变成蓝色,如果我移动鼠标的鼠标悬停/鼠标移开功能接管。
我想确保当我点击一个按钮时,它保持蓝色。一旦我点击一个新按钮,那么新点击的按钮将保持蓝色,并且以前点击的按钮现在可以通过鼠标悬停/鼠标悬停变成白色/黑色。
任何人都可以帮助我了解如何跟踪状态和/或防止事件重叠。
你可以'.addClass上的click事件(“点击”)'和具有定义为'色'clicked'类:蓝色important'在你的CSS – damndaewoo
确定这是有意义的,使一个CSS一个特定的类,然后设置任何被点击的按钮来给它的CSS属性。那么我将如何去检测以前点击过的按钮(如果有的话),这样我就可以删除新分配的类。 – user3051442