效果图:

extjs代码:

// 模型
Ext.define('ParkingAttachment', {extend: "Ext.data.Model",
idProperty: 'id',
fields:[
{name:'id'},
{name:'parkingId'},
{name:'attachment'},
{name:'attachmentName'},
{name:'attachmentUrl'}
]
}); // 存储
var parkingAttachmentStore = Ext.create('Ext.data.Store', {
model: 'ParkingAttachment',
autoLoad: true,
proxy: {
type: 'ajax',
actionMethods: {
read: "POST"
},
url: securedroot + 'squadron/getParkingAttachment',
reader: {
type: 'json'
}
}
}); // 面板
var attachmentPanel = Ext.create('Ext.Panel', {
id: 'images-view',
iconCls: 'silk-attach',
autoScroll: true,
frame: true,
margin: '-5 20 5 10',
height: 300,
title: '图片预览',
items: Ext.create('Ext.view.View', {
store: parkingAttachmentStore,
margin: '5 20 5 20',
tpl: [
'<tpl for=".">',
'<div class="thumb-wrap x-view-item-focused" id="{attachmentName}" style="height: 230px; margin:10px 35px 10px 35px;cursor:pointer;>',
'<div class="thumb"><img style="max-height: 220px;max-width: 275px;vertical-align:middle;" src="' + ORCH_SYSCONTANT.FILE_VIEW_URI + '{attachmentUrl}" title="{attachmentName}"></div>',
'</div>',
'</tpl>',
'<div class="x-clear"></div>'
],
multiSelect: false,
trackOver: true,
itemSelector: 'div.thumb-wrap',
emptyText: '没有图片显示',
plugins: [
Ext.create('Ext.ux.DataView.DragSelector', {})
],
prepareData: function (data) {
Ext.apply(data, {
shortName: Ext.util.Format.ellipsis(data.attachmentName, 15),
});
return data;
},
listeners: {
itemclick: function (dv, nodes) {
var url = nodes.data.attachmentUrl;
window.open(ORCH_SYSCONTANT.FILE_VIEW_URI + url);
}
}
})
});

以下是上述代码中用到的变量:

// 国际化:
FILE_VIEW_URI: 'http://10.10.1.212:5980/sitefiles/lhzhzfpro/zf/file/'

// CSS样式
.thumb {
background-color: #ffffff;
border-radius: 3px;
box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
margin-top: 30px;
padding-bottom: 10px;
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
width: 100%;
} #images-view .thumb-wrap {
border: 2px solid #EAEAEE;
float: left;
margin-right:;
padding: 5px;
height: 120px;
}
.x-view-item-focused {
outline: 1px dashed #c0d4ed!important;
outline-offset: -1px;
}

最新文章

  1. .NET Core 1.1 发布 文档下载资源汇总
  2. javascript 技巧总结积累(正在积累中)
  3. angularjs 2.0 快速开始
  4. think in java学习笔记
  5. linux内存分配
  6. [转]Android各大网络请求库的比较及实战
  7. python 安装scrapy
  8. http 需要掌握的知识点(一)
  9. Google Map API 学习2-界面展示
  10. HDU ACM 1025 Constructing Roads In JGShining&amp;#39;s Kingdom-&amp;gt;二分求解LIS+O(NlogN)
  11. Monkey Tradition(中国剩余定理)
  12. android视频录制、另一部手机实时观看方案
  13. 谈谈android反编译和防止反编译的方法(转)
  14. hdu3001(状压dp)
  15. javascript 日期对象(date)详解
  16. Linux下各类压缩文件命令小结
  17. 关于getchar()的知识
  18. CentOS 7 rsync
  19. docker、oci、runc以及kubernetes梳理
  20. NestedScrollView嵌套ViewPager

热门文章

  1. [Swift]LeetCode773. 滑动谜题 | Sliding Puzzle
  2. Linux如何配置想要的JDK
  3. vue组件的基本使用,以及组件之间的基本传值方式
  4. .NET Core实战项目之CMS 第十六章 用户登录及验证码功能实现
  5. 并发编程(十五)——定时器 ScheduledThreadPoolExecutor 实现原理与源码深度解析
  6. 并发编程(四)—— ThreadLocal源码分析及内存泄露预防
  7. DDD实战进阶第一波(一):开发一般业务的大健康行业直销系统(概述)
  8. RestTemplate的逆袭之路,从发送请求到负载均衡
  9. 剖析HBase负载均衡和性能指标
  10. RabbitMQ消息队列(五)-安装amqp扩展并订阅/发布Demo(.Net Core版)