Javascriptをはじめ、Ajax、jQueryの著書多数のガイドが、何かと最近騒がれているJa…
北欧好きが、愛用の北欧モノを見せ合うコミュニティ
Javascript関連情報
更新日:2007年12月28日
今回は、画像やcanvas、SVGなどを使わずに、jQueryとHTMLだけで手軽に美しいグラデーションを作れるプラグインGradientです。
<script src="./jquery.js" type="text/javascript"></script> <script src="./jquery.dimensions.js" type="text/javascript"></script> <script src="./jquery.gradient.js" type="text/javascript"></script>これで、3つのライブラリを読み、準備完了です。
<style type="text/css">
#myGraTest {
width: 300px;
height: 45px;
}
</style>
<div id="myGraTest" ></div>
<script type="text/javascript">
$j=jQuery.noConflict(); //他のライブラリとの衝突を回避します
$j(function() {
var target=$j('#myGraTest');
target.gradient({
from: 'A8EAFF',
to: '1C00E0',
direction: 'horizontal'
})
});
</script>
では、ソース順番にみていきます。 まず、グラデーションを書き出すためのDIVをmyGraTestというID名で用意しました。幅と高さは、CSSで指定しています。
<style type="text/css">
#myGraTest {
width: 300px;
height: 45px;
}
</style>
<div id="myGraTest"></div>
次に、ここでは、念のために他のコードとの衝突を避けるためのjQuery.noConflict()を使って ショートカットを$ではなく、$jに取り換えてみていますが、もちろん、これは、必須というわけではありません。
$j=jQuery.noConflict(); //他のライブラリとの衝突を回避しますそして、$j(function() { から });の間にスクリプトを書きます。 これは、DOMの構築待ち処理で、DOMが構築されるより先にDOM操作が行われてエラーとなるのを回避してくれます。
$j(function() {
//ここにスクリプト
});
$j('#myGraTest')によってid名が'#myGraTest'の要素を検索し、jQueryインスタンスを生成して、変数targetへ代入しておきます。この後は、target.css('width','600px')などのように、jQueryメソッドを接続連結して使えるようになります。
var target=$j('#myGraTest');
最後の、target.gradient({ から }) は、今回のプラグイン Gradientを呼び出すメソッドとなっています。
target.gradient({
from : 'A8EAFF',
to : '1C00E0',
direction : 'horizontal'
})
ここでは、引数へ、最初の色fromと最後の色to、そして、グラデーションの方向directionをオブジェクトリテラルの形式で指定しています。 これらの値を変えることで、いろいろなグラデーションが書けるわけです。 人気Javascriptランキング
Powered by 価格.com
北欧好きが、愛用の北欧モノを見せ合うコミュニティ