jquery 淡入淡出以及获取slideToggle状态

查了一下w3c资料

jQuery fadeIn(); 用于淡入已隐藏的元素。
jQuery fadeOut(); 用于淡出可见元素。
jQuery fadeToggle(); 可以在 fadeIn() 与 fadeOut() 方法之间进行切换。
jQuery fadeTo(); 允许渐变为给定的不透明度(值介于 0 与 1 之间)。

都归于jQuery 效果 - 淡入淡出一类。可以看出这四个效果的实质是显示与隐藏,只不过展示的效果不同罢了。

所以这里就容易判断slideToggle的状态了(类Join为触发块,类fisher为隐藏块):

//第一种,通过toggle来实现的,注意jQuery版本要是1.9之前的
$(".Join").toggle(function(){
    $(".fisher").slideToggle();
    alert("显示内容")
},function(){
    $(".fisher").slideToggle();
    alert("隐藏内容");
});
//第二种写法,用if语句判断显示或者隐藏,提示一下这里的"visible"不可替换为"show"
$(".Join").click(function(){
    $(".fisher").slideToggle(function(){
        if($(this).is(":visible")){
            alert("显示内容");
        }else{
            alert("隐藏内容");
        }
    });
}); 
//第三种,使用JavaScript的条件运算符
$(".Join").click(function(){
    $(".fisher").slideToggle(function(){
       $(".Join").text( $(this).is(":visible") ? "显示内容" : "隐藏内容" );
    });
}); 

参考:

W3chool
百度知道

你可能感兴趣的:(jquery 淡入淡出以及获取slideToggle状态)