jQueryではいくつかの基本エフェクトが用意されています。
- show 拡大/フェードインして表示
- hide 縮小/フェードアウトして表示
- slideDown 下へスライド
- slideUp 上へスライド
- fadeIn フェードイン
- fadeOut フェードアウト
それぞれのメソッドのパラメータには速度を指定します。この速度はslow, normal, fastの3つを指定することができます。
以下のサンプルはshow()を使ったサンプルでボタンをクリックすると段落の内容が拡大しフェードインしながら表示されます。(サンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>サンプル</title>
<style type="text/css"><!--
.mainText {
background-color:#ffd;
color:red;
border:1px solid black;
}
--></style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"><!--
$(document).ready(function(){
$("#btn").click(function(){
$("p").show("slow");
});
});
// --></script>
</head>
<body>
<h1>jQuery : サンプル</h1>
<form>
<input type="button" value="Click" id="btn">
</form>
<p class="mainText">ここの段落がエフェクトにより表示されます。</p>
</body>
</html>
上記のサンプルでは最初から段落が表示されてしまっています。実際の用途では段落は非表示になっているはずです。この場合にはaddClass()を使って表示処理を行うスタイルシートを設定するようにします。ただ、すでに表示済みの場合にはエフェクトを適用させたくないこともあります。このような場合には$("p:hidden")とすると表示されていない場合のみエフェクトの対象となります。逆に表示されている場合のみ処理したい場合には$("p:visivle")のように指定します。以下のサンプルはボタンをクリックすると段落が表示されます。ボタンを何度も押すと何度でもエフェクト処理が行われます。(サンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>サンプル</title>
<style type="text/css"><!--
.mainText {
background-color:#ffd;
color:red;
border:1px solid black;
visibility:hidden;
}
.showText {
visibility:visible;
}
--></style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"><!--
$(document).ready(function(){
$("#btn").click(function(){
$("p").addClass("showText").show("slow");
});
});
// --></script>
</head>
<body>
<h1>jQuery : サンプル</h1>
<form>
<input type="button" value="Click" id="btn">
</form>
<p class="mainText">ここの段落がエフェクトにより表示されます。</p>
</body>
</html>
フェードインエフェクトの場合は以下のようになります。(サンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>サンプル</title>
<style type="text/css"><!--
.mainText {
background-color:#ffd;
color:red;
border:1px solid black;
visibility:hidden;
}
.showText {
visibility:visible;
}
--></style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"><!--
$(document).ready(function(){
$("#btn").click(function(){
$("p").addClass("showText").fadeIn("slow");
});
});
// --></script>
</head>
<body>
<h1>jQuery : サンプル</h1>
<form>
<input type="button" value="Click" id="btn">
</form>
<p class="mainText">ここの段落がエフェクトにより表示されます。</p>
</body>
</html>
スライドエフェクトの場合は以下のようになります。(サンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>サンプル</title>
<style type="text/css"><!--
.mainText {
background-color:#ffd;
color:red;
border:1px solid black;
visibility:hidden;
height:100px;
}
.showText {
visibility:visible;
}
--></style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"><!--
$(document).ready(function(){
$("#btn").click(function(){
$("p").addClass("showText").slideDown("slow");
});
});
// --></script>
</head>
<body>
<h1>jQuery : サンプル</h1>
<form>
<input type="button" value="Click" id="btn">
</form>
<p class="mainText">ここの段落がエフェクトにより表示されます。</p>
</body>
</html>
スライドエフェクトの場合は以下のようになります。(サンプルを
実行する)
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>サンプル</title>
<style type="text/css"><!--
.mainText {
background-color:#ffd;
color:red;
border:1px solid black;
visibility:hidden;
height:100px;
}
.showText {
visibility:visible;
}
--></style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"><!--
$(document).ready(function(){
$("#btn").click(function(){
$("p").addClass("showText").slideDown("fast");
});
});
// --></script>
</head>
<body>
<h1>jQuery : サンプル</h1>
<form>
<input type="button" value="Click" id="btn">
</form>
<p class="mainText">ここの段落がエフェクトにより表示されます。</p>
</body>
</html>
[
目次へ]
(2006.8.5)