2011-11-28 57 views
0

我試圖使該移動的元素選定位置的功能:創建特殊的jQuery功能

我希望它看起來像這樣:

$('#drag').jDrag.moveTo(233, 1); 

由於這將是一個API爲我的插件。

我的代碼是:

$.jDrag = function() {}; 
$.fn.jDrag.moveTo = function (x, y) { 
    $(this).animate({ 
     position: 'absolute', 
     left: x, 
     top: y 
    }); 
}; 

的代碼是打破我的插件。我知道爲什麼,因爲它錯了。但我不知道如何去做。我正在使用$.jDrag = function() {};獲取api函數中的jDrag部分。

在此先感謝。

+0

這不能工作,因爲'this'會迷路。 – SLaks

+0

是什麼問題? – Anurag

回答

3

與一些小的修改,你可以做到這一點

$.fn.jDrag = function(opt){ 

    if(opt.moveTo) 
    { 
     var x = opt.moveTo.x, y = opt.moveTo.y 
     $(this).animate({ 
      position: 'absolute', 
      left: x, 
      top: y 
     }); 
    } 

}; 

所以最後是:

$(window).load(function(){ 
     $('#some').jDrag({moveTo:{x:233, y:1}}); 
});