OtherUtils 其他工具函数
简介
utils工具函数中许多无法归类,将全部在本页列举。
axPreventDefault
阻止默认事件,比如点击a标签应该跳转,使用该函数可禁止默认跳转。
完整写法:axPreventDefault(event),参数说明如下:
- event:必填项,通常为window对象。
举例:无。
axFalseReturn
对象不存在报错并直接返回,不再继续执行。
完整写法:axFalseReturn(obj, text),参数说明如下:
- obj:必填项,不可为空。
- text:选填项,报错文本。
举例:无。
axCreateId
对象不存在报错并直接返回,不再继续执行。
完整写法:axCreateId(prefix, type, elem),可简写为:axCreateId(prefix),参数说明如下:
- prefix:必填项,文本前缀。
- type:选填项,可以填数字,也可以填'id',如果不填该函数将以时间戳创建字符串;如果elem存在并且该参数填'id',那么将返回该元素id值。
- elem:可以填"#id"、".className"、"div"等原生选择器以及Dom对象。
举例:axCreateId('ax', 10)。可能返回:'ax-9kjherwd45'(10位随机字符)
axPreventScroll
该函数让节点内使用滚轮却不滚动页面的滚动条,常用于窗口。
完整写法:axPreventScroll(preventDom, scrollDom),可简写为:axPreventScroll(preventDom),参数说明如下:
- preventDom:必填项,父节点,可以填"#id"、".className"、"div"等原生选择器以及Dom对象。
- scrollDom:选填项,子节点,可以填"#id"、".className"、"div"等原生选择器以及Dom对象。如果不填,将作用域父节点。
举例:axPreventScroll('#parent', '#child') ,该例子在#child元素中可使用滚动条,但是页面的滚动条不会滚动。
axTplEngine
该函数是本框架所使用的模板引擎。
完整写法:axTplEngine(html, data),参数说明如下:
- html:必填项,带变量的字符串,变量或js代码用'<%'和'%>'包裹,变量使用this.*方式引用。
- data:选必填项,支持html渲染内容的参数对象。
举例:axTplEngine(`<div><%' this.country '%></div>`, {country:'china'}) ,该例子将返回字符串:<div>china</div>。
axArrange
该函数可以让数组进行完全排列组合,返回新数组。
完整写法:axArrange(origin, n),参数说明如下:
- origin:必填项,原始字符串
- n:必填项,数组维度length。
举例:axArrange('man', 2) ,该例子将返回[['m','a'],['m','n'],['a','n']]。
axCleanString
该函数可以使录入特殊字符进行转意以避免植入脚本,包括<>&"'。
完整写法:axCleanString(value),参数说明如下:
- value:必填项,任意字符串
举例:axCleanString('<div>我爱中国!</div>') ,该例子将返回'<div>我爱中国!</div>。
axResult
该函数可以创建矢量动画结果效果。
完整写法:axResult(elem, state),参数说明如下:
- elem:必填项,现有子节点对象,可以填"#id"、".className"、"div"等原生选择器以及Dom对象。
- state:必填项,可以填success、error、question和info。
举例:axResult('#demo', 'success') ,该例子将在#demo元素创建一个成功结果动画。
axCreateContent
该函数用来创建窗口主体内容,专属用于dialog、drawer和popup插件。
完整写法:axCreateContent(options, instance, callback),参数说明如下:
- options:必填项,dialog、drawer或popup插件的options。
- instance:必填项,dialog、drawer或popup插件的实例本身,通常为this。
- callback:选填项,回调函数。
axFooterBtns
该函数用来创建窗口底部内容,专属用于dialog、drawer和popup插件。
完整写法:axFooterBtns(options, instance),参数说明如下:
- options:必填项,dialog、drawer或popup插件的options。
- instance:必填项,dialog、drawer或popup插件的实例本身,通常为this。
axLocalTime
该函数可以将任意时间转成本地时间戳。
完整写法:axLocalTime(date, utc),参数说明如下:
- date:必填项,日期,格式可以是"YYYY-MM-DD" 或 "YYYY/MM/DD"。
- utc:选填项,所填时间是否是utf时间,可填true或false。true和false的时间转换结果会相差8个小时
举例:axLocalTime('2022-2-12'),该例子将返回时间戳:1644595200000。
axValidRepeat
该函数用于点击提交表单校验。
完整写法:axValidRepeat(e, data, outer, callback, interval = 100),参数说明如下:
- e:必填项,通常是window。
- data:必填项,数组数据,格式为:[{parent:'',children:{name:'',verified:'',text:''}},{}]。
- outer:必填项,表单项的父层,可以是form节点,也可以是某div节点,但是必须与表单项的父节点一致,所以建议是form节点。
- callback:选填项,校验成功后执行回调函数。
- interval:必填项,表单项校验的间隔时间,纯是为了显示逐个校验效果,默认100毫秒。
举例:略。
axCookie
该函数封装了原生cookie方法,支持cookie的写入、读取和删除。
写入cookie,完整写法:axCookie.set(name, value, {type:'day',expires:365})
读取cookie,完整写法:axCookie.get(name)
删除cookie,完整写法:axCookie.del(name)
set的options参数说明如下。
- type:选填项,以什么单位过期,可选择second或s,minite或m,hour或h,day或d,默认day。
- expires:选填项,过期时间,与type对应使用,默认365。
- path:选填项,cookie有效范围,与原生cookie方法一致。
- domain:选填项,cookie的作用域,与原生cookie方法一致。
- secure:选填项,使用通过HTTPS传递cookie,与原生cookie方法一致。
- sameSite:选填项,是否禁止第三方获取cookie,与原生cookie方法一致。
举例:axCookie.set('myname':'AXUI',{path:'/'}),该例子设置myname=AXUI的cookie,并对全站有效。