Javascript 添加类和删除类在单个语句中不起作用
您需要在Javascript 添加类和删除类在单个语句中不起作用,javascript,jquery,Javascript,Jquery,您需要在slideDown()上以回调函数的形式给出第二条语句: 或者更好的是,您还需要使用slideUp的回调函数 $("button").click(function(){ $("#p1").addClass("size").slideUp(2000).slideDown(2000, function () { $(this).removeClass("size"); }); }); 因为它们不应该并行发生,而是在每一个都完成后按顺序发生。实际上它们是在添加和删
slideDown()
上以回调函数的形式给出第二条语句:
或者更好的是,您还需要使用slideUp的回调函数
$("button").click(function(){
$("#p1").addClass("size").slideUp(2000).slideDown(2000, function () {
$(this).removeClass("size");
});
});
因为它们不应该并行发生,而是在每一个都完成后按顺序发生。实际上它们是在添加和删除fine,但它是立即发生的。你需要推迟一下
$("button").click(function() {
$("#p1").addClass("size").slideUp(2000, function () {
// Execute this after 2 seconds of slideUp animation.
$(this).slideDown(2000, function () {
// Execute this after 2 seconds of slideDown animation.
$(this).removeClass("size");
});
});
});
所以你想点击按钮,添加一个类,向上滑动,然后向下滑动,然后一次性删除该类?我想你想要的是一个“动画”功能,你可以试试这个:亚伯拉罕,你在吗<代码>:)
你好,普拉文,我在这里!任何动画方法,如slideUp()/slideDown()
都使用fx队列,这样它就不会并行运行。您的第一个代码片段足够了,可读性也更高:)@A.Wolff first有点错误。但第二个是正确的。哦,等等,那么你的意思是说两者都做相同的事情?都做相同的事情,第二个是显式版本,但在不利于可读性的情况下,imhoYa,它在jQuery@PraveenKumar只需stop()
,stop(true,true)
(在本例中与只需stop(true)
)即可完成之前的任何动画,我想对于显示的元素,并不是人们真正期望的行为
$("button").click(function() {
$("#p1").addClass("size").slideUp(2000, function () {
// Execute this after 2 seconds of slideUp animation.
$(this).slideDown(2000, function () {
// Execute this after 2 seconds of slideDown animation.
$(this).removeClass("size");
});
});
});
$("button").click(function(){
$("#p1").addClass("size").slideUp(2000, function(){$(this).slideDown(2000 ,function(){ $(this).removeClass("size")})});
/* p1 is a id of element, i want to add size class after that to remove it */
});