<#-- 标题 -->
<#-- 全局属性定义 -->
<#-- 全局函数定义 -->
<#-- 全局正则表达式定义 -->
<#-- 全局类定义 -->
${zhiqim_turorial_ZmUI_demo_start()}
全局定义:
凡狐JS统一命名空间为“F”,同时“F”也是window下全局函数,如果“F”有定义冲突请使用全称“zhiqim”。在全局“F”命名空间下定义的全局属性、全局函数、全局正则表达式和全局类。
全局属性定义
| 属性 | 值 | 说明 |
| Z.v | 1.2.2 | ZhiqimJS的基线版本号 |
| Z.u | undefinded | undefinded的简写,如if (abc == Z.u)来判断是不是未定义 |
| Z.d | document | document的简写 |
| Z.n | navigator | navigator的简写 |
| Z.l | location | location的简写 |
| Z.ua | userAgent.toLowerCase() | userAgent的小写简写 |
全局函数定义
| 函数 | 说明 | 参数 | 参数说明 |
| Z.eval(expression) | 执行表达式语句 | expression | 表达式字符串,如:var abc = "abc"; |
| Z.alert(text, callback) | 弹出警告对话框 | text | 警告文本,链接暂不支持 |
| callback | 回调函数,点击确定后回调 | ||
| Z.confirm(text, callback, param) | 弹出询问对话框 | text | 询问文本,链接暂不支持 |
| callback | 回调函数,点击确定后回调,点击取消不处理 | ||
| param | 设置参数,支持参数有{height: 50} | ||
| Z.prompt(text, value, callback, param) | 弹出修改对话框 | text | 修改说明,链接暂不支持 |
| value | 修改的值 | ||
| callback | 回调函数,点击确定后回调 | ||
| param | 设置参数 | ||
| Z.bind(f, $this) | 返回一个新的函数,使得原函数this指向$this对象下执行 | f | 原函数 |
| $this | 指向$this对象 | ||
| Z.each(object, callback) | 减化循环处理,默认this绑定到item上 | object | 对象 |
| callback | 回调函数 | ||
| Z.eachof($this, object, callback) | 减化循环处理,支持对字符串,数字,类数组和纯对象处理,=true表示中途退出循环,默认this绑定到传入的$this上,如果未传则绑定到item上 另外支持除$this,object,callback之外的参数也会出现在回调函数中 |
$this | 回调函数指针 |
| object | 循环处理对象 | ||
| callback | 回调函数 | ||
| Z.clone(obj) | 克隆一个新值 | obj | 对象 |
| Z.onload(f) | 初始化后加载 | f | 对象 |
| Z.random(length, type) | 随机生成一定长度的字符或数字 | length | 长度 |
| type | 类型表名生成的随机字符串是字母数字(0或undefinde),数字(1),字母(2),大写字母(3),小写字母(4),大写字母和数字(5),小写字母和数字(6) | ||
| Z.timer(speed, times, $this, process, complete) | 定时任务 | speed | 速度,单位毫秒,如50 |
| times | 执行次数,-1表示一直运行 | ||
| $this | 回调函数时的this | ||
| process | 运行时回调函数 | ||
| complete | 完成时回调函数 | ||
| Z.drag(elem, param, callback, $this) | 拖拽或滑动 | elem | 属性 |
| param | 拖放参数,如果为字符串或node表示拖放对象 | ||
| callback | 回调函数 | ||
| $this | 回调函数时的this | ||
| Z.dragInParent(elem, drag, parent, callback, $this) | 拖拽或滑动 | elem | 属性 |
| drag | 拖放对象 | ||
| parent | 拖放对象的父对象 | ||
| callback | 回调函数 | ||
| $this | 回调函数时的this |
全局正则表达式定义(统一定义在Z.R中)
| 正则表达式 | 说明 | 值 |
| 空格 | ||
| Z.R.SPACE | 空格 | /\s+/ |
| Z.R.SPACE_LEFT | 左空格 | /^\s+/ |
| Z.R.SPACE_RIGHT | 右空格 | /\s+$/ |
| 数值型 | ||
| Z.R.NUMERIC | 数值型 | /^\d+$/ |
| Z.R.INTEGER | 整数,支持正负数 | /^(0|[\+\-]?[1-9]\d*)$/ |
| Z.R.INTEGER_P | 正整数 | /^[1-9]\d*$/ |
| Z.R.INTEGER_N_N | 非负整数 | /^(0|[1-9]\d*)$/ |
| 小数型 | ||
| Z.R.FLOAT | 浮点值,支持多位小数点 | /^(0|[\+\-]?[1-9]\d*)(\.\d+)?$/ |
| Z.R.FLOAT_N_N | 非负浮点值,支持多位小数 | /^(0|[1-9]\d*)(\.\d+)?$/ |
| Z.R.AMOUNT_2R | 标准元金额,支持0-2位小数 | /^(0|[\+\-]?[1-9]\d*)(\.\d{1,2})?$/ |
| Z.R.AMOUNT_2R_FIXED | 固定元金额,两位小数 | /^(0|[\+\-]?[1-9]\d*)(\.\d{2})$/ |
| Z.R.AMOUNT_N_N_2R | 非负标准元金额,支持0-2位小数 | /^(0|[1-9]\d*)(\.\d{1,2})?$/ |
| Z.R.AMOUNT_N_N_2R_FIXED | 非负固定元金额,两位小数 | /^(0|[1-9]\d*)(\.\d{2})$/ |
| 字符相关 | ||
| Z.R.ALPHABAT | 字母 | /^[A-Za-z]+$/ |
| Z.R.ALPHABAT_UPPER | 大写字母 | /^[A-Z]+$/ |
| Z.R.ALPHABAT_LOWER | 小写字母 | /^[a-z]+$/ |
| Z.R.ALPHA_LOWER_NUMERIC | 小写字母或数字 | /^[a-z0-9]+$/ |
| Z.R.ALPHA_UPPER_NUMERIC | 大写字母或数字 | /^[A-Z0-9]+$/ |
| Z.R.ALPHA_NUMERIC | 字母或数字 | /^[A-Za-z0-9]+$/ |
| Z.R.ALPHA_NUMERIC_PA | 大写小字母和数字,字母开头 | /^[A-Za-z][A-Za-z0-9]*$/ |
| Z.R.ALPHABAT_DOUBLE | 双字节 | /^[^x00-xff]+$/ |
| Z.R.CHINESE | 中文 | /^[\u4e00-\u9fa5]+$/ |
| Z.R.CHINESE_ALPHA_NUMERIC | 中文大小写字母和数字 | /^[\u4e00-\u9fa5A-Za-z0-9]+$/ |
| 日期相关 | ||
| Z.R.DATE | 日期 | /^((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))$/ |
| Z.R.TIME | 时间 | /^([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])$/ |
| Z.R.DATE_TIME | 日期时间 | /^((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))\s(([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9]))$/ |
| Z.R.DATE_TIME_MATCH | 日期时间简单匹配 | /^(\d{4})-(\d{2})-(\d{2})\s(\d{2}):(\d{2}):(\d{2})$/ |
| HTML相关 | ||
| Z.R.HTML | 是否包含HTML | /<|?\w+;/ |
| Z.R.HTML_XHTML_TAG | 适配HTML成XHTML标记 | /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig |
| Z.R.HTML_TAG_NAME | 查找HTML标记名称 | /<([\w:]+)/ |
| 其他 | ||
| Z.R.ACCOUNT | 账号,要求5-25位,中文大小写字母和数字和下划线、邮件符、点号,并且不能以@._开头和结尾 | /^(?!(_|@|\.))(?!.*?(_|@|\.)$)[\w@\.\u4e00-\u9fa5]{5,25}$/ |
| Z.R.PASSWORD | 密码,要求6-16位,大小写字母和.@_#$!~%符号 | /^[\w@\.#$!~%]{6,16}$/ |
| Z.R.MOBILE | 手机号,支持+86 | /^((\+86)|(86)|)?(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|170|18[0|1|2|3|5|6|7|8|9])\d{8}$/ |
| Z.R.MOBILE11 | 11位手机号 | /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|170|18[0|1|2|3|5|6|7|8|9])\d{8}$/ |
| Z.R.IP | IP地址 | /^((?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])$/ |
| Z.R.MAC | MAC地址 | /^[0-9A-Fa-f]{2}:[0-9A-Fa-f]{2}:[0-9A-Fa-f]{2}:[0-9A-Fa-f]{2}:[0-9A-Fa-f]{2}:[0-9A-Fa-f]{2}$/ |
| Z.R.QQ | QQ号 | /^[1-9]\d{4,10}$/ |
| Z.R.POSTAL_CODE | 邮政编码 | /^[1-9]\d{5}$/ |
| Z.R.EMAIL | 邮箱 | /^([\w-_]+(?:\.[\w-_]+)*)@((?:[a-z0-9]+(?:-[a-zA-Z0-9]+)*)+\.[a-z]{2,6})$/ |
| Z.R.IDCARD | 身份证号 | /^(\d{6})((((19|20)[0-9]{2})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))(\d{3}[0-9xX*])$/ |
全局类定义(由Z.Class.newInstance()派生的函数称为类)
| 属性/方法 | 属性/方法说明 | 举例 |
| 默认属性和方法 | ||
| immediate | 是否立即执行,默认false | 在构造函数中设置,如var draggable = new Draggable({immediate:true}); |
| set | 设置属性 | draggable.set(key, value); |
| 派出的类可定义的属性 | ||
| defaults | 缺省字段表 | defaults = {elem:null, id="123456"}, |
| 派出的类可定义的方法 | ||
| init | 初始化函数,无参数 | init(){}, |
| execute | 执行函数,无参数 | execute(){}, |
| 一、哈唏表类(Z.HashMap): |
| 属性/方法 | 属性/方法说明 | 举例 |
| 构造函数 | ||
| new | 构造函数 | var aMap = new Z.HashMap(); |
| 方法 | ||
| put | 设置值 | aMap.put("abc", "ABC"); |
| get | 获取值 | var value = aMap.get("abc"); |
| remove | 删除值 | aMap.remove("abc"); |
| clear | 清空表 | aMap.clear(); |
| size | 获取表大小 | var size = aMap.size(); |
| isEmpty | 判断是否为空 | var isEmpty = aMap.isEmpty(); |
| containKey | 判断KEY中是否包含值 | var containKey = aMap.containKey("abc"); |
| containValue | 判断VALUE中是否包含值 | var containValue = aMap.containValue("ABC"); |
| keySet | 获取KEY数组 | var keys = aMap.keySet(); |
| values | 获取VALUE数组 | var values = aMap.values(); |
| 二、可拖动类(Z.Draggable): |
| 属性/函数 | 属性/方法说明 | 举例 |
| 构造函数 | ||
| new | 构造函数 | var draggable = new Z.Draggable(); |
| 属性 | ||
| elem | 拖拽对象 | draggable.elem = Z.D.id("drag"); |
| drag | 拖拽手把 | draggable.drag = Z.D.id("drag"); |
| param | 拖拽参数(支持left,top,right,bottom,width,height其中right,bottom时width,height无效) | draggable.param = {left:0,top:0,width:500;height:300}; |
| cursor | 拖拽手势,默认move | draggable.cursor = "move"; |
| callback | 拖拽回调函数 | draggable.callback(){}; |
| callthis | 拖拽回调函数this指针 | draggable.callthis = $this; |
| 函数 | ||
| execute | 执行拖拽 | draggable.execute(); |
| close | 关闭拖拽 | draggable.close(); |
这里是内容