JavaScript中附件预览功能实现详解(推荐)


Posted in Javascript onAugust 15, 2017

由于公司的EMP影像平台比较繁琐,还需要下载才能够能够进行图片的预览,于是业务人员提出在附件列表页面增加预览页面。今天将完成的过程记录下来:

一种是js版本的,另一种是jquery版本, 在这里使用的是js版本的。jquery版本只是引入方式略有不同。

1.引入插件(已上传)

<SCRIPT src="styles/ccc/jquery.min.js"></SCRIPT>
 
<SCRIPT src="styles/ccc/viewer-jquery.min.js"></SCRIPT>

2.将预览页面写活

<SCRIPT>
var attach_path= '${param.attach_path}';
var attach_name= decodeURI('${param.attach_name}');
var attachPath= new Array();
attachName=attach_name.split(",");
var attachPath1= new Array();
attachPath1=attach_path.split(",");
for (var i=0;i<attachPath1.length;i++)
{ 
 attachPath2='102storage'+attachPath1[i];
 $("#jq22").append("<li><img alt='"+attachName[i]+"' src='"+attachPath2+"'></li>"); 
}
$(function() {
 $('#jq22').viewer({
  url: 'data-original',
 });
});
</SCRIPT>

将图片的路径从之前的列表页面传到预览页面,进行图片预览时既可以多选又可以不选,如果不选则默认展示本列表所有的图片,勾选的话则展示勾选的之后的图片,在这里发现APP上传了许多的图片的压缩包,所以在后台增加了自动解压的*.zip,*.rar的功能,这部分需要引入第三方jar包,1.6的仅支持*.zip格式的解压,并且最坑的sun公司默认编码,如果有中文就会报错,到jdk1.7才支持中文

import java.io.*; 
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipFile;
import com.yucheng.cmis.operation.CMISOperation;
import com.github.junrar.Archive;
import com.github.junrar.rarfile.FileHeader;

3.异步删除解压文件

考虑到解压之后的会占用共享磁盘的空间,所以在解压之后做异步删除,时间在20s之后,时间足够,不过20s之后如果点击重新加载页面的话会图片加载失败,因为图片的路径已经失效了。

//异步删除文件(节省空间)
   List<Thread> threadList = new ArrayList<Thread>();
   Thread thread = new Thread(new DeleteTemporaryFolder(dstDirectoryPath));
   thread.start();
   for(Thread t : threadList){
    try {
     t.join();
    } catch (InterruptedException e) {
     e.printStackTrace();
    }
   }

4.磁盘挂载

在显示图片的时候,页面是访问不了工程以为的图片路径,所以需要执行挂载命令将共享磁盘的路径挂载在工程下的某个路径

mount --bind /testshare01 /app/cmis/project/cmis.war/ff/testshare01

这样就可以正常展示了

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助~如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持!

Javascript 相关文章推荐
javascript拓展DOM操作 prependChild insertAfert
Nov 17 Javascript
Jquery工作常用实例 使用AJAX使网页进行异步更新
Jul 26 Javascript
jQuery遍历Form示例代码
Sep 03 Javascript
js、css、img等浏览器缓存问题的2种解决方案
Oct 23 Javascript
jQuery后代选择器用法实例
Dec 23 Javascript
jQuery读取XML文件内容的方法
Mar 09 Javascript
JS实现仿PS的调色板效果完整实例
Dec 21 Javascript
使用jQuery 操作table 完成单元格合并的实例
Dec 27 jQuery
JavaScript插入排序算法原理与实现方法示例
Aug 06 Javascript
vue-cli3中配置alias和打包加hash值操作
Sep 04 Javascript
JS实现纸牌发牌动画
Jan 19 Javascript
JavaScript阻止事件冒泡的方法
Dec 06 Javascript
input输入框内容实时监测(附代码)
Aug 15 #Javascript
vue的基本用法与常见指令
Aug 15 #Javascript
vue如何集成raphael.js中国地图的方法示例
Aug 15 #Javascript
JavaScript与Java正则表达式写法的区别介绍
Aug 15 #Javascript
js基于FileSaver.js 浏览器导出Excel文件的示例
Aug 15 #Javascript
form表单序列化详解(推荐)
Aug 15 #Javascript
JavaScript上传文件时不用刷新页面方法总结(推荐)
Aug 15 #Javascript
You might like
php统计时间和内存使用情况示例分享
2014/03/13 PHP
php批量删除数据库下指定前缀的表以prefix_为例
2014/08/24 PHP
PHP 快速排序算法详解
2014/11/10 PHP
php文件缓存类汇总
2014/11/21 PHP
Thinkphp5结合layer弹窗定制操作结果页面
2017/07/07 PHP
PHP CURL与java http使用方法详解
2018/01/26 PHP
js 数组操作代码集锦
2009/04/28 Javascript
javascript 嵌套的函数(作用域链)
2010/03/15 Javascript
按Enter键触发事件的jquery方法实现代码
2014/02/17 Javascript
javascript学习笔记(七)Ajax和Http状态码
2014/10/08 Javascript
JavaScript中的setMilliseconds()方法使用详解
2015/06/11 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
vuejs实现递归树型菜单组件
2018/01/13 Javascript
在vue中使用公共过滤器filter的方法
2018/06/26 Javascript
微信小程序实现默认第一个选中变色效果
2018/07/17 Javascript
vue单页缓存方案分析及实现
2018/09/25 Javascript
layui清除radio的选中状态实例
2019/11/14 Javascript
理解JavaScript中的对象
2020/08/25 Javascript
python根据开头和结尾字符串获取中间字符串的方法
2015/03/26 Python
Python排序搜索基本算法之归并排序实例分析
2017/12/08 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
使用PyInstaller将python转成可执行文件exe笔记
2018/05/26 Python
python3的输入方式及多组输入方法
2018/10/17 Python
Linux CentOS Python开发环境搭建教程
2018/11/28 Python
tensorflow使用freeze_graph.py将ckpt转为pb文件的方法
2020/04/22 Python
python 字典item与iteritems的区别详解
2020/04/25 Python
利用Canvas模仿百度贴吧客户端loading小球的方法示例
2017/08/13 HTML / CSS
alice McCALL官网:澳大利亚时尚品牌
2020/11/16 全球购物
华三通信H3C面试题
2015/05/15 面试题
三年大学生活自我鉴定
2014/01/21 职场文书
大四毕业生自荐书
2014/07/05 职场文书
工程部经理岗位职责
2015/02/02 职场文书
升职自荐信范文
2015/03/27 职场文书
后天观后感
2015/06/08 职场文书
消防演习感想
2015/08/10 职场文书
《称赞》教学反思
2016/02/17 职场文书