- 浏览: 536179 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
zfx1982:
楼主能把doubango和webrtc2sip的源码发我一份么 ...
CentOS下编译webrtc2sip实战 -
zfx1982:
请问在编译doubango的时候configure总是说少sr ...
CentOS下编译webrtc2sip实战 -
cgs1999:
845896876 写道老师你好,我发现// 自定义属性 ...
使用Java操作LDAP案例 -
845896876:
老师你好,我发现// 自定义属性 a ...
使用Java操作LDAP案例 -
myitela:
NAT即地址转换,也可以是内网地址与外网地址的转换。如nat1 ...
NAT与NAT穿越学习总结
关键词:
CSS,EasyUI,图标
摘 要:
本案例主要介绍,使用EasyUI实现CSS样式文件中图标的可视化,方便使用CSS样式文件中的图标。
1、案例描述
在开发项目过程中,界面使用了EasyUI框架,该框架自带了一些图标,如下图所示。
相关图标样式定义在icon.css文件中,样式内容如下所示:
上述有二十几个图标,另外,后续项目还会根据需要,增加自定义的图标。在开发时存在一个问题:不知道样式对应的图标是什么样的,需要查看对应的图标文件才能知道,开发时要找到合适的图标可能需要查看所有的图标文件,这样开发比较麻烦,且效率不高。
那么,能不能使样式文件中的所有图标可视化?这样开发人员可以直观、快速的找到所需要的图标及对应的样式,从而提高开发效率。
经过一番研究,笔者实现了相关功能,下面我们一起探讨分析和解决的过程。
2、案例分析
2.1 基本思路
对CSS样式文件的读取和解析,使用Web方式和JavaScript无疑是最方便的,要使JavaScript能够获取到样式文件和样式内容,那么,需要在Web页面中引用样式文件。另外,后续将自定义的图标样式文件引入到页面中,即可方便的查看样式文件中的图标。
样式文件中,需要区分图标样式和其它的样式,参考EasyUI自带的图标样式文件icon.css,所有图标样式统一以“.icon”作为前缀,通过该前缀来区分图标样式和其它的样式。
为方便使用,提供查看所有样式图标和查看指定样式文件图标两种功能,相关处理过程如下所示:
(1)查看所有样式图标的时序图
(2)查看指定样式文件图标的时序图
2.2 关键技术点
1、规约图标的样式,统一图标格式,如:统一增加“.icon”前缀;
2、获取页面中所有引用的样式文件;
3、获取指定样式文件中的所有图标样式;
3、解决过程
3.1 获取页面中所有的样式文件
注:返回的数组中,第一个为“全部”,索引值为-1,可通过该值查看所有的图标。
3.2 获取单个样式文件中的所有图标样式
注:参数index为页面中样式文件的索引值,从0开始。
3.3 获取所有样式文件中所有的图标样式
注:上面已获取到单个样式文件中的图标样式,那么获取所有的样式文件中的所有图标样式,只须遍历所有的样式文件,然后将结果合并即可。
3.4 使用ComboTree和TreeGrid来展示相关的图标
注:这里使用1个ComboTree和1个TreeGrid来实现整个界面,ComboTree用于列出页面中所有的样式文件,并可通过切换样式文件来查看指定样式文件中所包含的图标;而TreeGrid则用于展示图标,方便使用人员直观的查看图标及对应的样式和所在的样式文件地址。
3.5 引入自定义的样式文件
参考EasyUI的icon.css,编写自定义样式文件myicon.css,添加自定义样式对应的图标,并在页面中引入:
4、运行结果
1、使用ComboTree列出页面中所有样式文件,如下图所示:
2、查看所有样式图标,如下图所示:
3、查看指定样式文件图标,如下图所示:
5、总结
综上所述,相关的解决过程和结果,实现了CSS样式文件中图标的可视化,直观展示图标的效果、对应的样式名称以及所属的样式文件,方便了开发使用。上述的解决方案,还可应用于样式文件中其它类型图片或样式效果的可视化,这里就不再赘述。
6、源代码
下面附件为完整源代码,请将代码解压到任意的Web服务器下,即可访问查看效果。
(注: 本地直接打开运行会报错,无法查看到效果)
点击这里下载
7、参考资料
[1] js列举css中所有图标的实现代码
http://dev.128.com/document/32701.html
CSS,EasyUI,图标
摘 要:
本案例主要介绍,使用EasyUI实现CSS样式文件中图标的可视化,方便使用CSS样式文件中的图标。
1、案例描述
在开发项目过程中,界面使用了EasyUI框架,该框架自带了一些图标,如下图所示。
相关图标样式定义在icon.css文件中,样式内容如下所示:
.icon-blank{ background:url('icons/blank.gif') no-repeat center center; } .icon-add{ background:url('icons/edit_add.png') no-repeat center center; } ……(篇幅有限,这里省略) .icon-mini-refresh{ background:url('icons/mini_refresh.png') no-repeat center center; }
上述有二十几个图标,另外,后续项目还会根据需要,增加自定义的图标。在开发时存在一个问题:不知道样式对应的图标是什么样的,需要查看对应的图标文件才能知道,开发时要找到合适的图标可能需要查看所有的图标文件,这样开发比较麻烦,且效率不高。
那么,能不能使样式文件中的所有图标可视化?这样开发人员可以直观、快速的找到所需要的图标及对应的样式,从而提高开发效率。
经过一番研究,笔者实现了相关功能,下面我们一起探讨分析和解决的过程。
2、案例分析
2.1 基本思路
对CSS样式文件的读取和解析,使用Web方式和JavaScript无疑是最方便的,要使JavaScript能够获取到样式文件和样式内容,那么,需要在Web页面中引用样式文件。另外,后续将自定义的图标样式文件引入到页面中,即可方便的查看样式文件中的图标。
样式文件中,需要区分图标样式和其它的样式,参考EasyUI自带的图标样式文件icon.css,所有图标样式统一以“.icon”作为前缀,通过该前缀来区分图标样式和其它的样式。
为方便使用,提供查看所有样式图标和查看指定样式文件图标两种功能,相关处理过程如下所示:
(1)查看所有样式图标的时序图
(2)查看指定样式文件图标的时序图
2.2 关键技术点
1、规约图标的样式,统一图标格式,如:统一增加“.icon”前缀;
2、获取页面中所有引用的样式文件;
3、获取指定样式文件中的所有图标样式;
3、解决过程
3.1 获取页面中所有的样式文件
function getStyleSheets() { var data = []; data[data.length] = {id: -1, text: "全部"}; for ( var i = 0; i < document.styleSheets.length; i++) { var url = document.styleSheets[i].href; if (url) { data[data.length] = { id: i, text: url.substr(url.lastIndexOf("/") + 1) }; } } return data; }
注:返回的数组中,第一个为“全部”,索引值为-1,可通过该值查看所有的图标。
3.2 获取单个样式文件中的所有图标样式
function getIcons(index) { var data = []; var styleSheet = document.styleSheets[index]; var rules; if (styleSheet.cssRules) { rules = styleSheet.cssRules; } else { rules = styleSheet.rules; } for ( var j = 0; j < rules.length; j++) { // 样式中,规约以".icon"开头的即为图标 if (rules[j].selectorText.substr(0, 5) == ".icon") { data[data.length] = { id: index + "-" + j, text: rules[j].selectorText.substr(1), iconCls: rules[j].selectorText.substr(1), href: (styleSheet.href ? styleSheet.href : "") }; } } return data; }
注:参数index为页面中样式文件的索引值,从0开始。
3.3 获取所有样式文件中所有的图标样式
function getAllIcons() { var data = []; for ( var i = 0; i < document.styleSheets.length; i++) { data = $.merge(data, getIcons(i)); } return data; }
注:上面已获取到单个样式文件中的图标样式,那么获取所有的样式文件中的所有图标样式,只须遍历所有的样式文件,然后将结果合并即可。
3.4 使用ComboTree和TreeGrid来展示相关的图标
$(function() { $("#data-grid").treegrid({ idField: "id", treeField: "iconCls", rownumbers: true, striped: true, singleSelect: true, width: 800, height: 500, fitColumns: true, autoRowHeight: true, columns: [[{ field: "iconCls", title: "IconCls", halign: "center", width: 60, formatter: function(value, row, index) { return ""; } }, { field: "id", title: "ID", halign: "center", width: 60, hidden: true }, { field: "text", title: "Text", halign: "center", width: 100 }, { field: "href", title: "Href", halign: "center", width: 200 } ]] }); $("#css-list").combotree({ data: getStyleSheets(), onClick: function(node) { var id = node.id; var data = id<0 ? getAllIcons() : getIcons(id); $("#data-grid").treegrid("loadData", data); }, onLoadSuccess : function(node,data) { $('#css-list').combotree('setValue', -1); var data = getAllIcons(); $("#data-grid").treegrid("loadData", data); } }); });
注:这里使用1个ComboTree和1个TreeGrid来实现整个界面,ComboTree用于列出页面中所有的样式文件,并可通过切换样式文件来查看指定样式文件中所包含的图标;而TreeGrid则用于展示图标,方便使用人员直观的查看图标及对应的样式和所在的样式文件地址。
3.5 引入自定义的样式文件
参考EasyUI的icon.css,编写自定义样式文件myicon.css,添加自定义样式对应的图标,并在页面中引入:
<link rel="stylesheet" type="text/css" href="static/myicon.css">
4、运行结果
1、使用ComboTree列出页面中所有样式文件,如下图所示:
2、查看所有样式图标,如下图所示:
3、查看指定样式文件图标,如下图所示:
5、总结
综上所述,相关的解决过程和结果,实现了CSS样式文件中图标的可视化,直观展示图标的效果、对应的样式名称以及所属的样式文件,方便了开发使用。上述的解决方案,还可应用于样式文件中其它类型图片或样式效果的可视化,这里就不再赘述。
6、源代码
下面附件为完整源代码,请将代码解压到任意的Web服务器下,即可访问查看效果。
(注: 本地直接打开运行会报错,无法查看到效果)
点击这里下载
7、参考资料
[1] js列举css中所有图标的实现代码
http://dev.128.com/document/32701.html
- listcssicon.rar (582.8 KB)
- 下载次数: 80
发表评论
-
MySQL中Update的执行效率测试及验证
2016-12-06 16:22 69031、引言 某日,在讨论解决生产环境的问题时,一同事问说增加条件 ... -
MySQL定时器实战
2016-11-29 17:38 21831、引言 项目商用环境上,用户反馈有个统计存在问题,排查后 ... -
用Java实现N*N的标准数独及对角线数独解题
2016-10-11 11:25 35481、引言 前一段时间迷 ... -
在Spring项目中实现动态创建数据库
2017-06-21 16:31 52701、问题描述 在使用Sprin ... -
改进现有架构支持HTTPS服务
2016-06-23 16:57 01、引言 nginx使用ssl模块配置HTTPS支持 ht ... -
CentOS下从源码安装Asterisk实战
2016-05-20 20:23 37160、引言 在研究WebRTC服 ... -
EasyUI学习(1)- 入门
2015-12-14 17:20 00、引言 前段时间,在项目开发过程中使用了EasyUI的部分组 ... -
JS实现的3级联动例子
2015-06-17 23:10 1389朋友项目需要实现3级联动,需要JS实现的,网上找的例子有些复杂 ... -
JSBuilder2介绍及应用范例
2014-08-27 17:58 01、引言 Web项目开发过程中,使用到多个第三方的插件,同时, ... -
jquery选择器学习范例
2014-04-22 20:54 0http://www.w3school.com.cn/jque ... -
通过webrtc2sip实现web客户端sipML5与SIP客户端Jtisi对通
2014-01-13 19:53 00、引言 在研究WebRTC服 ... -
NAT与NAT穿越学习总结
2013-12-23 19:19 205131、引言网络地址转换 ... -
完全清除Desktop_1.ini和Desktop_2.ini
2013-12-06 17:21 72021、引言 Windows7工作机进入系统就会弹出“deskto ... -
CentOS下搭建Asterisk+SIPml5实战
2013-11-14 14:53 00、引言 在研究SIPml5信令处理时,需要搭建环境SIPml ... -
CentOS下编译webrtc2sip实战
2013-11-13 10:39 152970、引言 在研究WebRTC服 ... -
Java实现RTP流转发服务器
2013-10-24 17:36 00、引言 在做多方视频会议系统时,需要有代理服务器来转发视频平 ... -
利用mysql日志排查数据异常问题
2013-03-21 16:52 01、案例描述 2、MySQL日志 3、解决过程 (1) ... -
Java中通过MySQL的行锁解决并发写的问题
2012-12-22 12:45 01、案例描述 开发会议管理项目中,涉及会议管理系统和视频会议平 ... -
【算法】基于时间段的有限资源算法
2013-03-07 12:20 24351、案例描述 最近做会议管理系统,预约会议需要一个算法来判断在 ... -
API测试范例
2012-10-29 18:38 01、MessagesAPITest package com ...
相关推荐
"Dreamweaver CS6 CSS样式汉化文件"是指将Dreamweaver CS6中与CSS相关的用户界面元素、帮助文档和提示信息等翻译成中文的语言包。 "Resources.dll"是一个动态链接库文件,通常包含应用程序运行时需要的资源,如字符...
在数据可视化中,SVG常用来绘制流程图、图表和其他矢量图形。开发者可能使用SVG路径(path)元素来绘制线条和形状,结合CSS3动画,使得图形元素在指定路径上流动,呈现出动态流转的效果。 3. **流程图**: 在数据...
在大屏可视化设计中,CSS可以用来定制图表的颜色、字体、边框、背景等视觉元素,使其符合品牌风格或特定的视觉需求。此外,CSS还可以用于响应式设计,使大屏在不同设备上都能保持良好的显示效果。 JavaScript是实现...
在CSS可视化中,关键知识点包括: 1. **响应式设计**:大屏幕模板需要适应不同的显示设备和分辨率,因此,响应式设计是必不可少的。使用媒体查询(media queries)可以实现屏幕尺寸变化时样式的变化。 2. **布局...
"powerbi desktop自定义可视化图标(pbiviz文件可直接导入使用)"这个标题指出,我们将探讨如何利用.pbiviz文件来实现这一过程。PBIVIZ文件是Power BI自定义视觉对象的打包格式,包含了所有必要的代码和资源,使得...
- .css: CSS样式文件,1个,定义了全局样式。 项目简述:此项目利用Vue.js框架结合vue-echarts插件,打造了一个数据可视化的交互式大屏,适用于各类数据监控与展示场景,实现数据的直观展现与高效分析。
6. **images** 文件夹:可能包含了项目中使用的图片资源,如图标、背景图像等,为可视化增加视觉元素。 7. **project** 文件夹:可能包含了项目的其他相关文件,如HTML模板、配置文件等。 在实际应用中,开发者...
ECharts图标可视化界面是一种利用ECharts库创建的交互式数据展示平台,通常用于大数据的可视化分析,便于用户理解和解析复杂的数据信息。ECharts是百度开源的一款JavaScript图表库,支持多种图表类型,如折线图、...
JavaScript,作为客户端脚本语言,是实现数据可视化动态交互的核心。在这个实例中,JavaScript库如D3.js、ECharts、Highcharts或者Chart.js可能被用到,这些库提供了丰富的图表类型,如折线图、柱状图、饼图、地图等...
3. **进入“CSS样式”面板**:在顶部菜单栏选择“窗口”>“CSS样式”,或者直接点击右侧工具栏中的“CSS样式”图标。 4. **创建新样式**:在“CSS样式”面板中点击“新建CSS规则”按钮(通常是一个加号图标),然后...
- CSS样式文件:36个,定义整体的视觉风格和布局 - HTML模板文件:27个,构成网页的基本结构 - Markdown文档:20个,提供项目相关的说明和帮助 - JSON配置文件:8个,存储配置信息 - SVG图形文件:6个,用于...
【标题】中的“基于Echarts的可视化大屏通用大数据可视化展示模版”表明这是一个使用Echarts库构建的大数据可视化项目,适用于大屏幕展示。Echarts是中国百度公司开发的一个开源JavaScript图表库,支持丰富的数据...
在数据可视化领域,CSS(Cascading Style Sheets)起着至关重要的作用,它负责定义页面的布局和样式,使得大屏展示既美观又易读。通过深入理解这12套源码,我们可以学习到以下关键知识点: 1. **响应式设计**:在...
为此,"Visual CSS可视化编程"应运而生,它提供了一种直观的图形化界面,使得设计者可以通过拖拽和预览的方式来实现CSS的编写,大大降低了门槛。 Visual CSS的核心理念在于可视化,它将复杂的CSS语法转换为易于理解...
3. **JavaScript**: 虽然在文件名称列表中没有明确提到JavaScript,但在大数据可视化中,JavaScript通常用于处理动态交互和数据绑定。可能在`js`文件夹内包含JavaScript代码,用于处理数据加载、图表绘制、用户交互...
5. **图表库**:集成常见的图表库(如Chart.js、Highcharts等),可以快速生成柱状图、饼图、折线图等,帮助可视化后台数据。 6. **按钮和图标**:提供多种风格的按钮设计,以及常用的图标集,如Font Awesome,增强...
在地图数据可视化中,这通常涉及热力图、点密度图、 choropleth 图等多种图表类型。 5. **数据看板图片**:数据看板是一种交互式的信息展示工具,包含各种图表和指标,用于实时更新和展示关键绩效指标(KPIs)。在...
压缩包中的文件列表虽然没有详细列出,但通常会包含HTML文件、CSS样式表文件(用于控制页面样式和布局)、JavaScript文件(包含ECharts库和自定义脚本)、图片和图标资源等。开发者可以通过编辑这些文件来修改模板,...
在这个项目中,`index.html` 可能引入了JavaScript和CSS文件,以实现交互式的数据可视化图表。 `结果.png` 是项目完成后生成的一个静态图像,它可能展示了数据分析的结果,如不同种类鸢尾花在特征空间中的分布情况...