2010年7月13日

[jQuery]實作JQuery UI drag and drop





實作drag and drop:
將drag目標拖曳至drop目標時,內容會互換。
var $a_droppableObject,b_draggableObject_html,$b_droppableObject,a_draggableObject_html;

$('.drop').droppable({

scope:'sc',

torlerance:'pointer',

over:function(e,ui){

$(this).css('background-color', '#90F');

b_draggableObject_html = $(this).html();

$b_droppableObject =$(this);

},

out:function(e,ui){

$(this).css('background-color', '#FFC');



},

drop:function(e,ui){

$(this).css('background-color', '#FFF').siblings().css('background-color', '#FFC');

if(b_draggableObject_html!='' && a_draggableObject_html!='')

{

$b_droppableObject.html(a_draggableObject_html);

$a_droppableObject.html(b_draggableObject_html);

$a_droppableObject.children().removeClass().addClass('drag').draggable({

addClass:false,

revert:'invalid',

scope:'sc',

stack:".drag",

helper:'clone',

opacity:0.35,

start:function(e,ui){

a_draggableObject_html = $(this).parent().html();

$a_droppableObject = $(this).parent();

}//end of start

});

//end of draggable function

$b_droppableObject.children().removeClass().addClass('drag').draggable({

addClass:false,

revert:'invalid',

scope:'sc',

stack:".drag",

helper:'clone',

opacity:0.35,

start:function(e,ui){

a_draggableObject_html = $(this).parent().html();

$a_droppableObject = $(this).parent();

}//end of start

});

//end of draggable function



//remove clone object

$b_droppableObject.children().each(function(){
if($(this).css('opacity')==0.35)

$(this).remove();

});
$b_droppableObject=null;

$a_droppableObject=null;

b_draggableObject_html='';

a_draggableObject_html='';

}//end if function
}

});

$('.drag').draggable({

addClass:false,

revert:'invalid',

scope:'sc',

stack:".drag",

helper:'clone',

opacity:0.35,

start:function(e,ui){

a_draggableObject_html = $(this).parent().html();

$a_droppableObject = $(this).parent();

}//end of start

});

2010年7月6日

[javascript]判斷數字/非數字



判斷數字

()
判斷一個數字是否為有限的
[用法]
isFinite(n)
[參數]
n 要檢測的數字
[傳回值]
true 如果n是有限數字(或者可以轉換成有限數字)
false 如果n是非數字(NaN),或是正、負無窮大的數

判斷非數字

()
檢測非數字值
[用法]
isNaN(x)
[參數]
x 要檢測的值
[傳回值]
true 如果x是特殊的非數字值(或者能被轉成這樣的值)
false x傳回是其他值