//jQuery 效果- 隐藏和显示.通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素:

//掩藏效果演示:
$(document).ready(function(){
    $("#hide").click(function(){
        $("p").hide();
    });
});

//展示效果演示
$(document).ready(function(){
    $("#show").click(function(){
        $("p").show();
    });
});

//HTML代码
/*
<body>
<p>如果你点击“隐藏” 按钮,我将会消失。</p>
<button id="hide">隐藏</button>
<button id="show">显示</button>
</body>
*/
$(selector).hide(speed,callback);
/*
可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是隐藏或显示完成后所执行的函数名称。
下面的例子演示了带有 speed 参数的 hide() 方法:
 */
$(document).ready(function(){
    $("#hide").click(function(){
        $("p").hide(1000);//话费1秒的事件执行掩藏的效果
    });
});

/*
jQuery toggle()
通过 jQuery,您可以使用 toggle() 方法来切换 hide() 和 show() 方法。
显示被隐藏的元素,并隐藏已显示的元素:
 */
$(document).ready(function(){
    $("button").click(function(){
        $("p").toggle();
    });
});
/*
$(selector).toggle(speed,callback);
可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是 toggle() 方法完成后所执行的函数名称。
 */
$(document).ready(function(){
    $("button").click(function(){
        $("p").toggle(1000);
    });
});

//Jquery效果之---淡入淡出
/*
jQuery 拥有下面四种 fade 方法:

fadeIn()
fadeOut()
fadeToggle()
fadeTo()
 */
//jQuery fadeIn() 用于淡入已隐藏的元素。$(selector).fadeIn(speed,callback);
//可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。.
//可选的 callback 参数是 fading 完成后所执行的函数名称。

/*
<div id="div1" style="width:80px;height:80px;background-color:red;"></div><br>
<div id="div2" style="width:80px;height:80px;background-color:green;"></div><br>
<div id="div3" style="width:80px;height:80px;background-color:blue;"></div>
 */
$(document).ready(function(){
    $("button").click(function(){
        $("#div1").fadeIn();
        $("#div2").fadeIn("slow");
        $("#div3").fadeIn(3000);
        $("p").fadeIn(4000);
    });
});
//jQuery fadeOut() 方法用于淡出可见元素。
$(document).ready(function(){
    $("button").click(function(){
        $("#div1").fadeOut();
        $("#div2").fadeOut("slow");
        $("#div3").fadeOut(3000);

    })
});

//jQuery fadeToggle() 方法可以在 fadeIn() 与 fadeOut() 方法之间进行切换
$(document).ready(function(){
    $("button").click(function(){
        $("#div1").fadeToggle();
        $("#div2").fadeToggle("slow");
        $("#div3").fadeToggle(3000);
    });
});

//jQuery fadeTo() 方法允许渐变为给定的不透明度(值介于 0 与 1 之间)。
//$(selector).fadeTo(speed,opacity,callback);
//必需的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
//fadeTo() 方法中必需的 opacity 参数将淡入淡出效果设置为给定的不透明度(值介于 0 与 1 之间)。
//可选的 callback 参数是该函数完成后所执行的函数名称。
$(document).ready(function(){
    $("button").click(function(){
        $("#div1").fadeTo("slow",0.15)
        $("#div2").fadeTo("slow",0.5)
        $("#div3").fadeTo("slow",0.12)
    });
});

//jQuery 效果-滑动
/*
jQuery 滑动方法
通过 jQuery,您可以在元素上创建滑动效果。
jQuery 拥有以下滑动方法:
slideDown()
slideUp()
slideToggle()
 */
/*
$(selector).slideDown(speed,callback);
可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是滑动完成后所执行的函数名称。
 */
//JQuery代码
$(document).ready(function(){
    $("#flip").click(function(){
        $("#panel").slideDown("dlow");
    });
});
//CSS代码
/*
<style type="text/css">
#panel,#flip
{
padding:5px;
text-align:center;
background-color:#e5eecc;
border:solid 1px #c3c3c3;
}
#panel
{
padding:50px;
display:none;
}
</style>
 */


//jQuery slideUp() 方法用于向上滑动元素。
$(document).ready(function(){
    $("#flip").click(function(){
        $("#panel").slideUp()
    });
});
//jQuery slideToggle() 方法可以在 slideDown() 与 slideUp() 方法之间进行切换。
$(document).ready(function(){
    $("#flip").click(function(){
        $("#panel").slideToggle();
    })
})


//jQuery 效果- 动画
//jQuery animate() 方法允许您创建自定义的动画。
//$(selector).animate({params},speed,callback);
//必需的 params 参数定义形成动画的 CSS 属性。
//可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
//可选的 callback 参数是动画完成后所执行的函数名称。
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({
            left:'250px',
            opacity:'0.5',
            height:'150px',
            width:'150px'
        });
    })
});
//<div style="background:#98bf21;height:200px;width:100px;position:absolute;">

//也可以定义相对值(该值相对于元素的当前值)。需要在值的前面加上 += 或 -=:
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({
             left:'250px',
             height:'+=150px',
             width:'+=150px'
        });
    });
});


//jQuery animate() - 使用预定义的值
//您甚至可以把属性的动画值设置为 "show"、"hide" 或 "toggle":
$(document).ready(function(){
    $("button").click(function(){
        $("div").animate({
            height:'toggle'
        });
    });
});

//jQuery animate() - 使用队列功能
//默认地,jQuery 提供针对动画的队列功能。
//这意味着如果您在彼此之后编写多个 animate() 调用,jQuery 会创建包含这些方法调用的"内部"队列。然后逐一运行这些 animate 调用。
$(document).ready(function(){
    $("button").click(function(){
        var div=$("div");
        div.animate({height:'300px',opacity:'0.4'},"slow");
        div.animate({width:'300px',opacity:'0.8'},"slow");
        div.animate({height:'100px',opacity:'0.4'},"slow");
        div.animate({width:'100px',opacity:'0.8'},"slow");
    });
});

$(document).ready(function(){
    $("button").click(function(){
        var div=("div");
        div.animate({left:'250px'});
        div.animate({fontSize:'3em'},"slow");
    });
});

//stop()停止动画
$(document).ready(function(){
  $("#flip").click(function(){
    $("#panel").slideDown(5000);
  });
  $("#stop").click(function(){
    $("#panel").stop();
  });
});

//jQuery Callback 方法
$(document).ready(function(){
    $("p").hide("slow",function(){
        alert("The Page is now hidden!");
    });
});

//没有回调函数的情况
$(document).ready(function(){
  $("button").click(function(){
    $("p").hide(1000,function(){
        alert("现在段落被隐藏了");
    });
  });
});

//通过 jQuery,可以把动作/方法链接在一起。
//Chaining 允许我们在一条语句中运行多个 jQuery 方法(在相同的元素上)。
$(document).ready(function()
    {
        $("button").click(function(){
            $("#p1").css("color","green").slideUp(2000).slideDown(2000);
        });
    }
);