1. 程式人生 > >Ueditor 1.4.3 單獨呼叫上傳圖片,或檔案功能

Ueditor 1.4.3 單獨呼叫上傳圖片,或檔案功能

第一步, 引入檔案

<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);然後問題搞定