2011-11-28 29 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}}); 
});