2017-10-18 74 views
3

我有一个按钮,其中附加了一个类,它涉及到2个函数中的一个,当我单击页面时,我希望按钮的类更改为第二个jQuery函数。jquery按钮类更改

目前设置如下:

<button id="btn" class="func1">click</button> 

当我按一下按钮我想func2加载,而不是func1

很抱歉的天真。

回答

0

试试这个单

$('#btn').click(function() { 
    $(this).removeClass('func1'); 
    $(this).addClass('func2'); 
}); 

或者,如果你想重复这个过程 -

$('#btn').click(function() { 
    $(this).toggleClass('func1'); 
    $(this).toggleClass('func2'); 
}); 
0

既然你问到执行基于功能在类上,然后切换类,以便第二次单击该按钮时,它将exe cutes另一个功能......那么这可能会为你工作:

当我按一下按钮我想FUNC2加载,而不是FUNC1

$("body").on("click","#btn",function(e){ 
    if ($(this).hasClass("func1")) { 
     func2(); // execute func2 
     $(this).removeClass("func1").addClass("func2"); // toggle the classes 
    } else { 
     func1(); // execute func1 
     $(this).removeClass("func2").addClass("func1"); // toggle the classes 
    } 
}); 

你可以在地方使用$(this).toggleClass("func1 func2")$(this).removeClass("func2").addClass("func1"),但在我过去的某些情况下,切换开关被盗用,并且交换了错误的东西(如果某人快速点击了,或者由于某种原因js执行在机器上陷入了僵局)。所以我喜欢使用remove和add的绝对值。