ueditor富文本上传pdf并能实时预览

2018-09-10 16:00:24

1.ueditor的附件功能自带上传pdf功能。

        然而我使用的是github改装七牛版本的,缺提示  文件类型不允许


        这就尴尬了,通过文本搜素,也只能这样了,ueditor的js文件太大了,太复杂了。这个肯定是检测上传配置文件引起的。去看配置文件,发现页没啥问题。php error_log 打印配置项和路由,发现原来这个上传文件统一使用的uploadImg这个路由。

那就在上传图片的配置文件上放开了pdf上传。至此可以上传pdf了。


2.html进行pdf展示。(再放开插入html元素 iframe标签的前提下)

        虽然上传成功了,但是pdf是展现为附件的,这样就有点不好了。

        通过查看附件html代码,关键词搜索,然后去更改了插入pdf的地方。

        截取修改的代码。


for (i = 0; i < filelist.length; i++) {
    item = filelist[i];
    icon = iconDir + getFileIcon(item.url);
    title = item.title || item.url.substr(item.url.lastIndexOf('/') + 1);

    if(title.indexOf("pdf")>0){
        html +='<iframe style="width: 100%;height: 600px;border: 0px;overflow: hidden" width="100%" height="500px"  src="'+item.url+'"></iframe>'

    }else{
        html += '<p style="line-height: 16px;">' +
            '<img style="vertical-align: middle; margin-right: 2px;" src="'+ icon + '" _src="' + icon + '" />' +
            '<a style="font-size:12px; color:#0066cc;" href="' + item.url +'" title="' + title + '">' + title + '</a>' +
            '</p>';
    }


}
me.execCommand('insertHtml', html);

    完美实现。

  • 2017-07-17 14:48:15

    通过node.js保存emoji到mysql

    但是emoji通过utf-8编码后,每个字符占4个字节,属于宽字符。而老版本的mysql只支持一个字符占3个字节,所以老版本的mysql是无法存储emoji的。新版本的mysql增加了字符集utf8mb4,可以支持单字符最多占4个字节。utf8mb4是utf8的超集,可以无需修改地支持原来的utf8字符 要让mysql存储emoji,需要满足2个条件:

  • 2017-07-17 14:48:20

    通过node.js保存emoji到mysql

    但是emoji通过utf-8编码后,每个字符占4个字节,属于宽字符。而老版本的mysql只支持一个字符占3个字节,所以老版本的mysql是无法存储emoji的。新版本的mysql增加了字符集utf8mb4,可以支持单字符最多占4个字节。utf8mb4是utf8的超集,可以无需修改地支持原来的utf8字符 要让mysql存储emoji,需要满足2个条件:

  • 2017-07-17 17:05:03

    大白话讲解Promise(一)

    去年6月份, ES2015正式发布(也就是ES6,ES6是它的乳名),其中Promise被列为正式规范。作为ES6中最重要的特性之一,我们有必要掌握并理解透彻。本文将由浅到深,讲解Promise的基本概念与使用方法。

  • 2017-07-19 07:54:11

    Javascript中delete运算符

    Delete是Javascript语言中使用频率较低的操作之一,但是有些时候,当我们需要做delete或者清空动作时,就需要delete操作。在这篇文章中,我们将深入探讨如何使用它,以及它是如何工作的。

  • 2017-07-26 11:57:00

    Laravel 定时任务

    在 php 中使用定时器是一件不太简单的事情,之前大概只能通过 cron 来实现定时任务。但是在 Laravel5 中,定时任务将会变得很简单。