未捕获的TypeError:$(…)。draggable不是函数

大家好我想让一些divs拖延,我已经设法用jquery-ui做到了。 我还有一个脚本删除2个div并将它们合并为一个(如果它们已经合并在一起)但是当我在新的“合并”div上调用draggable函数时我得到的错误是标题…所以问题是什么 ? 怎么可能.draggable函数在一个地方工作而不在另一个地方(在同一个文件中)!!

这是可拖动的function:

function drag($class){ $("."+$class).draggable({ containment: ".tab-content", grid: [ 3, 3 ], zIndex:100, obstacle: "#nothere", preventCollision: true, drag: function(){ $(".test").css("background-color","red"); $(this).css("background-color","green"); } }); } 

首先,我为测试类调用它,它完美无缺地运行

 drag("test"); 

但是当我在合并函数内再次调用它时它会返回错误:Uncaught TypeError:$(…)。draggable不是函数

 drag("test:not(.ui-draggable)"); 

js文件正确加载:

   

请务必在项目中包含以下文件:

     

检查他们的例子 。 使用开发人员工具(Chrome下的F12)查看是否已导入所有资源。

我知道这是一个老问题,但由于我遇到了同样的问题而无法找到答案……

我已经包含了所有正确的脚本,检查了链接是否有效等等,但它仍然无法正常工作。

然后我将脚本引用移动到调用.draggable和…的代码的正上方。它完美地工作。