0

在我的可拖动文件中,代码start:变得stop:太大(50-100 行),我开始遇到可读性问题。

$(".dra").draggable({
    revert: "invalid",
    start: function(ev, ui){
        //...50-100 lines...
    },
    stop: function(ev, ui){
        //...50-100 lines...
    }
});

为了修复可读性,我想创建两个全局函数startDrag()stopDrag()然后像start: startDrag(ev, ui). 但我未能成功完成这项工作:

function startDrag(ev, ui){
    //...50-100 lines...
}

function stopDrag(ev, ui){
    //...50-100 lines...
}

function createDraggables(){
    $(".dra").draggable({
        revert: "invalid",
        start: startDrag(ev, ui),
        stop: stopDrag(ev, ui)
    });
}

任何想法为什么这不起作用?

4

2 回答 2

3

尝试将其更改为:

function createDraggables(){
    $(".dra").draggable({
        revert: "invalid",
        start: startDrag,
        stop: stopDrag
    });
}
于 2013-01-21T17:33:45.880 回答
2

由于函数作用域,可以这样写:

function createDraggables(){
    $(".dra").draggable({
        revert: "invalid",
        start: startDrag,
        stop: stopDrag
    });
}
于 2013-01-21T17:35:00.567 回答