Ueditor 1.4.3 單獨呼叫上傳圖片,或檔案功能
阿新 • • 發佈:2019-01-04
第一步, 引入檔案
<script src="ueditor/ueditor.config.js" type="text/javascript" charset="utf-8"></script>
<script src="ueditor/ueditor.all.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../jquery.min.js" type="text/javascript" charset="utf-8"></script>
第二步 html元素
<script type="text/plain" id="upload_ue"></script>
<!--呼叫的頁面:-->
<input type="text" id="picture" name="cover" /><a href="javascript:void(0);" onclick="upImage();">上傳圖片</a>
<input type="text" id="file" /><a href="javascript:void(0);" onclick="upFiles();"> 上傳檔案</a>
第三步 編寫js程式碼
<script type="text/javascript">
var _editor;
$(function() {
//重新例項化一個編輯器,防止在上面的editor編輯器中顯示上傳的圖片或者檔案
_editor = UE.getEditor('upload_ue');
_editor.ready(function () {
//設定編輯器不可用
_editor.setDisabled();
//隱藏編輯器,因為不會用到這個編輯器例項,所以要隱藏
_editor.hide();
//偵聽圖片上傳
_editor.addListener('beforeInsertImage' , function (t, arg) {
//將地址賦值給相應的input,只去第一張圖片的路徑
$("#picture").attr("value", arg[0].src);
//圖片預覽
$("#preview").attr("src", arg[0].src);
})
//偵聽檔案上傳,取上傳檔案列表中第一個上傳的檔案的路徑
_editor.addListener('afterUpfile', function (t, arg) {
$("#file").attr("value", _editor.options.filePath + arg[0].url);
})
});
});
//彈出圖片上傳的對話方塊
function upImage() {
var myImage = _editor.getDialog("insertimage");
myImage.open();
}
//彈出檔案上傳的對話方塊
function upFiles() {
var myFiles = _editor.getDialog("attachment");
myFiles.open();
}
</script>
第四步 最重要的一步, 修改bug
開啟image外掛的image.js 108行
editor.execCommand(‘insertimage’, list);程式碼之前加入
editor.fireEvent(‘beforeinsertimage’, list);然後問題搞定
在ueditor資料夾中找到檔案dialogs\attachment\attachment.html中找到程式碼
editor.execCommand(“insertHTML”,str);程式碼之前加入
editor.fireEvent(‘afterUpfile’, filesList);然後問題搞定