我正在尝试实现elFinder file manager。
这就是我所做的。
包含的文件:
$arr_css = array(
"main.css",
"jquery-ui.css",
"elfinder.min.css",
"theme.css"
);
$arr_js = array(
"jquery.js",
"main.js",
"jquery-ui.js",
"elfinder.min.js",
"elfinder.ru.js"
);
(main.js和main.css是用于创建
<link rel='stylesheet'>
和<script type='text/javascript'>
的数组)在我的主页上有一个
<div id='fileStructure'>
<div id="elfinder"> </div>
</div>
我用来初始化elfinder:
$(document).ready(function() {
var elf = $('#elfinder').elfinder({
lang: 'ru', // language (OPTIONAL)
url : '/radio/elfinder-2.0-rc1/php/connector.php' // connector URL (REQUIRED)
}).elfinder('instance');
});
这就是我现在所拥有的。看起来不错,我可以创建目录,文件,也可以上传它们。但是当我尝试复制它时,它说:
Uncaught TypeError: undefined is not a functionelfinder.min.js:2841 elFinder.commands.copy.execelfinder.min.js:1746 (anonymous function)elfinder.min.js:1706 (anonymous function)jquery.js:3058 jQuery.event.dispatchjquery.js:2676 jQuery.event.add.elemData.handle.eventHandle
同样的错误也发生在其他操作上,例如,剪切删除和其他操作。
当我查看脚本时,我看到错误与
return a.each(this.files(b), function (a, b) {
if (!b.read || !b.phash) return !d.reject(["errCopy", b.name, "errPerm"])
}), d.isRejected() ? d : d.resolve(c.clipboard(this.hashes(b))
我真的不明白为什么会这样,因为对我来说结构不清楚:
d = this
b = a(b)
并且a是elfinder主要功能的参数
(function (a) {
有人可以帮助我解决问题吗?可能有人遇到过类似的问题吗?
更新
Uncaught TypeError: undefined is not a functionelfinder.min.js:2860 elFinder.commands.cut.execelfinder.min.js:1746 (anonymous function)elfinder.min.js:1706 (anonymous function)jquery.js:3058 jQuery.event.dispatchjquery.js:2676 jQuery.event.add.elemData.handle.eventHandle
Uncaught TypeError: undefined is not a functionelfinder.min.js:4249 elFinder.commands.rm.execelfinder.min.js:1746 (anonymous function)elfinder.min.js:1706 (anonymous function)jquery.js:3058 jQuery.event.dispatchjquery.js:2676 jQuery.event.add.elemData.handle.eventHandle
最佳答案
从您的URL(/radio/elfinder-2.0-rc1/php/connector.php)中,您似乎正在使用Elfinder 2.0 RC1。
您应该知道Studio 42(开发elFinder的公司)自2012年以来就没有更新或开发过任何用于elFinder的代码。用户nao-pon最近负责开发和错误修复。
因此,您应该下载Nightly build以使用最新的更新代码。那可能应该解决您的问题。