介绍一款轻量级js控件:easy.js
easy.js 组件高速入门
在使用 easy.js 的组件之前,假设能花上几分钟看看以下的一些简单的入门指南,在使用组件的时候你会更加的得心应手。
简单性
easy.js 的组件在 UI(界面) 层面尽量保持简单,开发人员能够非常方便的通过改动 CSS 样式就能够轻松定制自己想要的样式。
使用一个组件通常情况下仅仅须要寥寥几行 JS 代码。
一致性
组件在接口设计、命名规则上都尽可能的保持一致。通常,你仅仅要使用过随意一个组件,那么其它组件也非常easy上手。
模块化
每一个组件都是一个独立的符合 AMD 规范的模块,都依赖 easy.js 的核心库,在使用时都能够通过 E.use 来进行载入。
命名空间
全部组件的命名空间都是 E.ui,在组件载入完后都能够通过 E.ui.xxxx 来訪问。
实例化
在使用组件时都须要通过 new keyword来实例化,组件类的首字母都是 大写。
实例化时,第一个參数 都是必需的,该參数通常都是设置须要实例化某个/组 DOM 元素。该參数能够是选择器字符串、DOM 元素以及 easyJS Object 的对象。
实例化时,第二个參数 都是可选的,该參数是一个多选可配置形式的 Object 对象。
事件处理
组件在实例化后都能够通过 on 方法来为组件绑定事件,相同,也能够通过 un 方法来卸载事件。各组件支持的事件类型能够在具体的说明文档中看到。在多选形式的配置參数中,除了可能存在 init 回调函数,不会有不论什么其它的回调。
销毁实例
组件实例能够通过 destroy 方法进行销毁。
Dialog 对话框组件
Define in : dialog.js
该组件用于创建一个 Dialog 对话框,对话框里能够包括不论什么你想加入的内容。对话框的 HTML 结构是组件自己主动构建的,仅仅需传递一个简单的文本就能够创建一个对话框,当然,你也能够传递自己定义的 HTML 结构。对话框默认的样式是 windows 8 的简洁风格,你也能够非常方便的自己定义对话框的样式。
Dialog( target, [ options ] )
- 依赖
- JS : 依赖 Drag 组件
- CSS : 依赖样式
- HTML : 组件自己主动构建
參数
- target
- String|
- Element|
- easyJS Object
必需target 能够是选择器字符串、DOM 元素,也能够是 easyJS Object,仅匹配第一个元素,该元素用于触发事件来显示对话框。
- options
- Object
可选多选形式的可配置參数。
下表列出多选可配置形式的參数的具体说明。
參数 | 数据类型 | 默认值 | 说明 |
---|---|---|---|
autoClose | Number | null |
自己主动关闭对话框的时间。 |
content | String|html String | Hello world : ) |
对话框的内容,能够是 HTML 字符串。 |
drag | Boolen | true |
是否同意拖拽对话框。 |
dragHandle | String|Element|easyJS Object | null |
自己定义对话框的拖拽区域。 |
effects | String | null |
动画效果的名称。 fade 淡入淡出效果。 slide 由顶部向中间高速滑动的效果。 zoom 缩放效果。 |
elem | String|Element|easyJS Object | null |
自己定义对话框的HTML结构。 |
fixed | Boolean | true |
是否固定定位,为 false 时则相对 body 进行绝对定位。 |
height | String | auto |
对话框的高度,需带单位。 |
left | String | null |
设置对话框的 x 轴定位值,需带单位,默觉得水平居中。 |
lock | Boolean | false |
是否锁定对话框,锁定对话框时没有关闭button,也不能使用 ESC 键来关闭。 |
noFn | Function | null |
取消button的回调函数,该回调函数的 this 指向对话框元素,假设该函数返回 false,将不会关闭对话框。未设置该參数将不显示取消button。同一时候关闭button也会调用该回调函数。 |
noText | String | 取消 |
取消button的文本内容。 |
overlay | Boolean | true |
是否显示遮罩层。 |
title | String | null |
对话框的标题,未设置该參数将不显示对话框的标题栏。 |
top | String | null |
设置对话框的 Y 轴定位值,需带单位,默觉得垂直居中。 |
topWindow | Boolean | false |
假设对话框定义在一个 iframe 中,是否同意其在顶级 window 中显示,假设须要在顶级窗体中显示,须要确保顶级窗体中有对话框的样式。 |
trigger | String | click |
触发显示对话框的事件,支持自己定义事件。 |
width | String | 320px |
对话框的宽度,需带单位。 |
yesFn | Function | null |
确定button的回调函数,该回调函数的 this 指向对话框元素,假设该函数返回 false,将不会关闭对话框。未设置该參数将不显示确定button。 |
yesText | String | 确定 |
确定button的文本内容。 |
zIndex | Number | 9999 |
对话框的定位层级。 |
方法
- close
关闭对话框实例,返回实例便于链式调用。
- destroy
销毁对话框实例。
- on
对对话框实例绑定事件,该方法接受2个參数,第一个參数是事件类型,第二个參数是事件处理器,返回实例便于链式调用。
- un
卸载对话框实例的事件。该方法接受1个事件类型的參数。返回实例便于链式调用。
下表列出了支持的事件类型。
事件类型 | 说明 | 事件对象 |
---|---|---|
open |
对话框显示时触发的事件。 |
event.target 对话框元素。 |
close |
对话框关闭时触发的事件。 |
event.target 对话框元素。 |
在使用 Dialog 组件前,对其进行载入。
1
2
3
|
E.use( 'dialog' , function (){ // 在回调中实例化对话框 }); |
Dialog 组件须要依赖样式。
1
2
3
4
5
6
7
8
9
10
11
12
|
.eui_overlay{ background: #333; opacity:0.6; filter:alpha(opacity=60); .eui_dialog .dg_wrapper{ background: #3498f0; box-shadow:0 .eui_dialog .dg_header{ height:27px; line-height:22px; overflow:hidden; color: #fff; .eui_dialog .dg_btn_close{ width:18px; height:18px; line-height:18px; overflow:hidden; float:right; font-size:22px; "Helvetica Neue" ,Helvetica,Arial,sans-serif; #fff; text-decoration:none; text-align:center; font-weight:400; position:absolute; top:6px; right:6px; background:#3498f0; } .eui_dialog .dg_btn_close:hover{ background: #c75050; .eui_dialog .dg_content{ padding:25px 10px; line-height:22px; border:1px solid #3c79ad; .eui_dialog .dg_footer{ width:300; padding:10px; padding-top:0; overflow:hidden; _zoom:1; border:1px solid #3c79ad; .eui_dialog .dg_btn_no, .eui_dialog .dg_btn_yes{ padding:0 18px; *padding:0 9px; height:20px; line-height:20px; background: #eaeaea; .eui_dialog .dg_btn_yes{ color: #000; border-color:#3399ff; .eui_dialog .dg_btn_yes:hover, .eui_dialog .dg_btn_no:hover{ background: #e0effc; |
样例1
创建一个对话框。
1
2
3
4
5
6
7
8
9
10
11
|
new E.ui.Dialog( '#runDemo1' , title : '对话框标题' , content : '对话框内容' , yesFn : function (){ alert( '我是确定button,回调函数返回false时不会关闭对话框。' ); return false ; }, noFn : function (){ alert( '我是取消button' ); } }); |
样例2
创建一个对话框,不要遮罩层,传递 HTML 字符串作为内容。
1
2
3
4
|
new E.ui.Dialog( '#runDemo2' , content : '不设置标题,直接不显示标题栏' , overlay : false }); |
样例3
创建一个对话框,并设置其显示和隐藏的动画效果为淡入淡出。
1
2
3
4
5
|
new E.ui.Dialog( '#runDemo3' , title : '对话框的动画效果' , content : '显示和隐藏对话框的动画效果为淡入淡出。' , effects : 'fade' }); |
样例4
创建一个对话框,并设置其显示和隐藏的动画效果为滑动。
1
2
3
4
5
|
new E.ui.Dialog( '#runDemo4' , title : '对话框的动画效果' , content : '显示和隐藏对话框的动画效果为滑动。' , effects : 'slide' }); |
样例5
创建一个对话框,并设置其显示和隐藏的动画效果为缩放。
1
2
3
4
5
|
new E.ui.Dialog( '#runDemo5' , title : '对话框的动画效果' , content : '显示和隐藏对话框的动画效果为缩放。' , effects : 'zoom' }); |
样例6
创建一个对话框,设置其绝对定位,并设置其在左上角显示。
1
2
3
4
5
6
|
new E.ui.Dialog( '#runDemo6' , title : '对话框的绝对定位' , content : '设置对话框在左上角显示。' , top : '100px' , left : '100px' }); |
样例7
自己定义对话框的HTML结构。
1
|
<div id= "testBox" style= "width:120px; >Press Esc close.</div> |
1
2
3
4
|
new E.ui.Dialog( '#runDemo7' , elem : '#testBox' , dragHandle : '#testBox' }); |
easy.js官网:http://easyjs.org/docs/components/index.html
转载请指明:http://blog.csdn.net/yangkai_hudong
介绍一款轻量级js控件:easy.js的更多相关文章
- 介绍Web项目中用到的几款JS日历日期控件和JS文本编辑框插件
第一款日历日期控件:layDate 官方网站:http://laydate.layui.com/ 第二款日历日期控件:my97 官方网站:http://www.my97.net/ 第三款 文本编辑器控 ...
- 分享12款 JavaScript 表格控件(DataGrid)
JavaScript 表格控件可以操作大数据集的 HTML 表格,提供各种功能,如分页.排序.过滤以及行编辑.在本文中,我们整理了13个最好的 JavaScript 表格插件分享给开发人员,开发者可以 ...
- 推荐一款JavaScript日历控件:kimsoft-jscalendar
一.什么是 kimsoft-jscalendar 一个简洁的avaScript日历控件,可在Java Web项目,.NET Web 项目中使用 二.kimsoft-jscalendar 有什么 ...
- 国籍控件(js源码)
国籍控件(js源码) 一直苦于没有好的国籍控件可以用,于是抽空写了一个国籍控件,现分享给大家. 主要功能和界面介绍 国籍控件主要支持中文.英文过滤以及键盘上下事件. 源码介绍 国籍控件核心是两个文件, ...
- 日积月累系列之国籍控件(js源码)
一直苦于没有好的国籍控件可以用,于是抽空写了一个国籍控件,现分享给大家. 主要功能和界面介绍 国籍控件主要支持中文.英文过滤以及键盘上下事件. 源码介绍 国籍控件核心是两个文件,navtionalit ...
- C#中在AxWebBrowser控件注入JS脚本的方法
/// <summary> /// 窗体加载 /// </summary> private void JS_Load(object sender, EventArgs e) { ...
- 【干货分享】JPager.Net MVC超好用轻量级分页控件
JPager.Net MVC好用的轻量级分页控件,好用到你无法想象,轻量到你无法想象. JPager.Net MVC好用的轻量级分页控件,实现非常简单,使用也非常简单. JPager.Net M ...
- VB.NET让webbrowser控件中JS脚本错误最新方法(2013-09-16)
最近也是在项目中遇到了webbrowser控件中想关闭JS脚本错误窗口的问题,所以经过多次测试,终于用一段高效实用的代码完美解决webbrowser控件中JS脚本错误窗口关闭的问题. 通过创建一个子线 ...
- 整理部分JS 控件 WEB前端常用的做成Jsp项目,方便今后直接用
整理部分JS 控件 WEB前端常用的做成Jsp项目,方便今后直接用 最近又没时间了,等用时间了,再加入更多的, 源码下载: http://download.csdn.net/detail/liang ...
- Net MVC轻量级分页控件
JPager.Net MVC超好用轻量级分页控件 JPager.Net MVC好用的轻量级分页控件,好用到你无法想象,轻量到你无法想象. JPager.Net MVC好用的轻量级分页控件,实现 ...
随机推荐
- struts2文件上传限制大小问题
struts2默认文件上传大小为2M,如需改动默认大小,解决方法例如以下: <struts> <constant name="struts.multipart.maxSiz ...
- linux进程通信之信号
本节主要学习信号和与信号相关的处理函数,兴许还会更新. http://blog.csdn.net/xiaoliangsky/article/details/40264151 一 信号 信号是UNIX和 ...
- 将行政区域导入SQL SERVER
步骤如下: 一.到国家统计局网站,找到县及县以上行政区划页面. 我找到的是这个:http://www.stats.gov.cn/tjbz/xzqhdm/t20130118_402867249.htm ...
- 【译】ASP.NET MVC 5 教程 - 9:添加新字段
原文:[译]ASP.NET MVC 5 教程 - 9:添加新字段 在本节中,我们将使用Entity Framework Code First 数据迁移功能将模型类的改变应用到数据库中. 默认情况下,当 ...
- 定义Java类的数组的问题
定义了一个类: class Student{ private int Id; public int getId() { return Id; } public void setId(int id) { ...
- ArcGIS For Flex给定两个
1.错误叙述性说明 2.错误原因 3.解决方案 版权声明:本文博客原创文章,博客,未经同意,不得转载.
- Jetty:开发指导Handlers
Rewrite Handler RewriteHandler匹配一个基于该请求的规则集合,然后根据匹配规则的变更请求. 最常见的要求是改写URI.但不限于:规则可以被配置为重定向响应.设置cookie ...
- Knockout应用开发指南 第十章:更多信息(完结篇)
原文:Knockout应用开发指南 第十章:更多信息(完结篇) 1 浏览器支持 Knockout在如下浏览器通过测试: Mozilla Firefox 2.0+(最新测试版本:3.6.8) Goo ...
- ubuntu oracle jdk
sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-javaX-i ...
- 怎样让你的安卓手机瞬间变Firefox os 畅玩firefox os 应用
Firefox os 手机迟迟不能在国内大面积上市.如今能买到的Firefox os手机国内就一款Firefox os ZET OPEN C ,但这款手机配置确实还不如人意.价格方面也不实惠,对于我们 ...