Javascriptをはじめ、Ajax、jQueryの著書多数のガイドが、何かと最近騒がれているJa…
Javascript関連情報
更新日:2008年01月15日
今回は、jQuery UIの中からDraggablesを紹介します。DOM要素を、極めて簡単にドラッグ可能にしてくれるツールです。
<script src="./jquery.js" type="text/javascript"></script> <script src="./jquery.dimensions.js" type="text/javascript"></script> <script src="./ui.mouse.js" type="text/javascript"></script> <script src="./ui.draggable.js" type="text/javascript"></script> <script src="./ui.draggable.ext.js" type="text/javascript"></script>これで、5つのライブラリを読み、準備完了です。 では、ひとつ簡単なサンプルを作ってみましょう。
<style type="text/css">
#myDrag {
width : 100px ;
height : 100px ;
padding : 10px ;
background-color : #B9FF04 ;
}
</style>
<div id="myDrag">ドラッグできます</div>
<script type="text/javascript">
$j=jQuery.noConflict(); //他のライブラリとの衝突を回避します
$j(function($) {
$('#myDrag').draggable();
});
</script>
このソースでドラッグを指示しているのは、わずかに、$('#myDrag').draggable() の部分だけです。その意味は、
<style type="text/css">
#myDrag {
width : 100px ;
height : 100px ;
padding : 10px ;
background-color : #B9FF04 ;
}
</style>
<div id="myDrag">ドラッグできます</div>
次に、ここでは、前回同様、念のために他のコードとの衝突を避けるためのjQuery.noConflict()を使って ショートカットを$ではなく、$jに取り換えてみていますが、もちろん、これは、必須というわけではありません。 $j=jQuery.noConflict(); //他のライブラリとの衝突を回避しますそして、$j(function() { から });の間にスクリプトを書きます。 これは、DOMの構築待ち処理で、DOMが構築されるより先にDOM操作が行われてエラーとなるのを回避してくれます。
$j(function() {
//ここにスクリプト
});
今回はこうです。
$j(function($) {
//ここにスクリプト
});
引数に$を入れてあります。 jQuery(function($) {
//ここにスクリプト
});
このあたりのことについて詳しくはこの記事をご覧ください。
$j(function($) {
$('#myDrag').draggable();
});
さて、このドラッグ用のメソッドにも他のプラグイン同様に、引数からオブジェクトを渡すことで、 いくつかのプロパティを設定できるようになっています。 たとえば次のようなものです。
$('#myDrag').draggable({
opacity : 0.5, //ドラッグ時の不透明度
cursor : 'move', //カーソル形状
axis : 'y' //ドラッグ方向
})
そろそろ慣れてきたと思いますが、jQueryのプラグインやUIでは、メソッドチェーンに連結される各メソッドのふるまいを決めるためのオプションパラメータを、このように、メソッドの引数へオブジェクトのプロパティとして渡すことが少なからず慣習的に行われています。 人気Javascriptランキング
Powered by 価格.com