Javascript &引用;未捕获类型错误:未定义不是函数;对于jQuery可拖放
我希望启用拖动元素并将它们放到指定的元素容器中。但当我加载我的网站时,我会在控制台中看到:Javascript &引用;未捕获类型错误:未定义不是函数;对于jQuery可拖放,javascript,jquery,Javascript,Jquery,我希望启用拖动元素并将它们放到指定的元素容器中。但当我加载我的网站时,我会在控制台中看到:uncaughttypeerror:undefined不是一个函数。。。presentation categories.js?版本=1:23 第23行是$(“.panel body”).dropable({开始的地方 我试图移除整个$(“.panel body”).dropable(…);然后draggable工作,但我需要放置容器 这是实际的演示类别。js: var dropped = false; $
uncaughttypeerror:undefined不是一个函数。。。presentation categories.js?版本=1:23
第23行是$(“.panel body”).dropable({
开始的地方
我试图移除整个$(“.panel body”).dropable(…);
然后draggable
工作,但我需要放置容器
这是实际的演示类别。js
:
var dropped = false;
$( ".draggable-presentation" ).draggable({
appendTo: ".my",
zIndex: 999999999,
placeholder: "sortable-placeholder",
revert: true,
cursorAt: {
left: 67,
top: 43
},
helper: function() {
var presBackground = $(this).find('.slide').css('background');
var presentationName = $(this).find('strong').html();
var helper = $('<div class="slide-helper"></div>').html(presentationName).css({background: presBackground});
return helper;
}
});
$( ".panel-body" ).droppable({
activeClass: "ui-state-default",
hoverClass: "ui-state-hover",
accept: ".slideshowWindow, .draggable-presentation, .slide",
drop: function( event, ui ) {
dropped = true;
}
}).sortable();
var-drop=false;
$(“.draggable演示文稿”).draggable({
附件:“.my”,
zIndex:99999999,
占位符:“可排序占位符”,
回复:对,
库索拉特:{
左:67,
排名:43
},
助手:函数(){
var presBackground=$(this.find('.slide').css('background');
var presentationName=$(this.find('strong').html();
var helper=$('').html(presentationName.css({background:presBackground});
返回助手;
}
});
$(“.panel body”).可拖放({
activeClass:“ui状态默认值”,
hoverClass:“ui状态悬停”,
接受:“.slideshowWindow、.draggable演示文稿、.slide”,
drop:函数(事件、用户界面){
删除=真;
}
}).sortable();
PS:我包括了jQuery和jQuery ui脚本以及最新版本。我收到了相同的错误消息,我通过更新我的jQuery ui javascript文件解决了它 转到并确保选中了“可拖放”选项,然后单击下载
现在,您将拥有一个包含可拖放功能的jQuery UI javascript文件。在我的情况下,是因为在包含
jQuery UI
之后再次包含jQuery
,所以请确保jQuery
在jQuery UI之前包含正确地排除了它们,但最有可能导致此错误的原因是那里的问题。第23行的“未定义不是函数”表明未定义可拖放的require.js
,因此:require(['jquery',jquery ui',],function($){
。它必须是正确的,因为其他jQuery ui交互工作正常。您可以记录$以及$('.panel body').droppable的内容吗?console.log($('document').sortable());
->元素选择器和console.log($('document').droppable());
->TypeError.我不知道为什么,但可排序和可拖放都是jQuery-ui的交互作用。对不起,我差点忘了你的答案:D是的,我记得,更新jQuery-ui是有效的。我使用的是requireJS,所以jQuery总是在jQuery-ui之前加载,但正如我在之前的评论中所说的,我只需要将jQuery-ui升级到最新版本。现在使用Cdnjquery,所以我不应该再发生这种情况。