Javascript 在jquery中删除类有不同的方法吗?
我正在使用这个代码Javascript 在jquery中删除类有不同的方法吗?,javascript,jquery,Javascript,Jquery,我正在使用这个代码 $(".textForm input").focus(function(){ $(this).val(""); $(".card").find('.'+this.id).addClass('focus'); }).blur(function(){ $(".card").find('.'+this.id).removeClass('focus'); }); 当输入框处于焦点时,添加.focus类,但每当我单击非输入框的任何位置时,该类将被删除。是否有一
$(".textForm input").focus(function(){
$(this).val("");
$(".card").find('.'+this.id).addClass('focus');
}).blur(function(){
$(".card").find('.'+this.id).removeClass('focus');
});
当输入框
处于焦点时,添加.focus
类,但每当我单击非输入框
的任何位置时,该类将被删除。是否有一种方法可以仅在单击另一个输入框时删除该类?
我不确定我问的问题是否正确,希望有人能理解我。
提前感谢。:输入选择所有输入
$(":input").click(function(){
$(":input").removeClass('focus');
});
上面的代码确保只有在将“焦点”类添加到另一个元素时才从一个元素中删除该类。您可以尝试以下操作:
$("input.textForm").focus(function(){
$(this).val("");
$(".card").find('.'+$(this).attr('id')).addClass('focus');
}).blur(function(){
$(".card").find('.'+$(this).attr('id')).removeClass('focus');
});
它不起作用。我删除了.blur
并在那里添加了您的代码,但没有起作用。可能做得不对。这只是删除了“.focus”类,但没有将其添加到下一个“input”中,但是谢谢。这非常有效!你能解释一下我们是如何将“.focus”类从自身移除的吗?这让我有点困惑。但是它可以工作,谢谢。在事件处理程序中,此
设置为事件触发的对象,因此$(this).doStuff()
对您单击的对象进行填充。哦,所以此
引用了此实例中的输入,对吗?好的,谢谢@AndresRivera$('.focus').removeClass('focus')
表示查找具有焦点
类的任何元素,并从中删除焦点
类。然后下一行将focus
类添加到当前输入元素
$("input.textForm").focus(function(){
$(this).val("");
$(".card").find('.'+$(this).attr('id')).addClass('focus');
}).blur(function(){
$(".card").find('.'+$(this).attr('id')).removeClass('focus');
});