- Base基础方法
- 原生对象方法
- Util通用组件
- Biz业务组件
milo.base
isUndefined(o)
说明:判断变量的值是否是 undefined
isArray(o)
说明:判断变量的类型是否是 Array
isFunction(o)
说明:判断变量的类型是否是 Function
isObject(o)
说明:判断变量的类型是否是 Object
isNumber(o)
说明:判断变量的类型是否是 Number
isString(o)
说明:判断变量的类型是否是 String
isBoolean(o)
说明:判断变量的类型是否是 Boolean
isDate(o)
说明:判断变量的值是否是 Date
isDom(o)
说明:判断变量的类型是否是 Dom节点
getDomVal(o)
说明:获取DOM对象的值
document.getElementById().value || document.getElementById().innerHTML
g(o)
说明:获取dom对象 =document.getElementById()
extend(des, sou)
说明:为对象进行扩展属性和方法
var a={x:1,y:1,z:1};
var b={a:1,b:2,z:3};
extend(a,b); //out: a{x:1,y:1,z:3,a:1,b:2}
extendLess(des, sou)
说明:为对象进行扩展属性和方法(des中不存在的属性不增加)
var a={x:1,y:1,z:1};
var b={a:1,b:2,z:3};
extendLess(a,b);
//out: a{x:1,y:1,z:3}
extendClass(subClass,superClass)
说明:类式继承类
var a = {x:1,y:1,z:1};
var extendClass(b,a);
//out: b{x:1,y:1,z:1}
cloneClass(o)
说明:原型继承类
var a = {x:1,y:1,z:1};
var b = cloneClass(a);
//out: b{x:1,y:1,z:1}
milo.string
milo.getByteLength(s)
说明:查找字符串的字节长度(中文算2 英文算1)
milo.getDwordNum(s)
说明:查找有多少个双字节字符
milo.getChineseNum(s)
说明:查找有多少个汉字字符
milo.cutChinese(s,iMaxBytes, sSuffix)
说明:截取中文字符串
milo.trimLeft(s)
说明:去掉字符串左边的非空字符
milo.trimRight(s)
说明:去掉字符串右边的非空字符
milo.trim(s)
说明:去掉字符串左右两边的非空字符
milo.replacePairs(s)
说明:成对字符串替换
milo.toHtml(s)
说明:字符串替换为HTML编码形式
milo.isMail(s)
说明:校验邮箱地址
milo.isTel(s)
说明:校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
milo.isMobile(s)
说明:校验手机号码:必须以数字开头
milo.isZipCode(s)
说明:校验邮政编码
milo.isIDCard(s)
说明:是否身份证号码
milo.isChinese(s)
说明:是否全部是中文
milo.isEnglish(s)
说明:是否全部是英文
milo.isURL(s)
说明:是否链接地址
milo.isNumberString(s)
说明:是否数字字符串
milo.loader
need(mods, cb)
说明:加载模块对象 对应模块需有define方法定义,否则返回中无法使用
need(["animal","dog"], function(animal, dog){
animal.eat();
dog.eat();
});
//animal和dog均为私有变量
//值的顺序与请求的顺序一一对应
//此处need方法请求的模块名为config配置中指定目录下的模块名
//非此目录下,需要通过绝对路径的方式引用
define(name, mods, cb)
说明:模块定义方法
//第一参数为对象名
//第二参数为所依赖的对象
//第三参数为对象的定义
define("dog", ["animal"], function(animal) {
return {
paw : animal.paw,
play : function() {
animal.play();
return "wang~";
},
eat: function() {
console.log("meat");
}
}
}
);
define(["core.test.animal"],function(animal) {
return {}
}
);
//缺省第一个参数,匿名时取文件名对象。
include(url, cb)
说明:加载文件方法(多个文件)
include(["http://apps.game.qq.com/1.php", "http://apps.game.qq.com/2.php"],
function(loaded1, loaded2){
if (!loaded) { //loaded 返回true/false
return ;
}
});
loadScript(url, cb)
说明:加载脚本基础方法(单一脚本,不缓存)
loadScript(["http://apps.game.qq.com/1.js", "http://apps.game.qq.com/2.js"],
function(loaded1, loaded2){
if (!loaded) { //loaded 返回true/false
return ;
}
});
loadCSS(url, cb)
说明:加载CSS基础样式(仅css)
loadCSS(["biz.selCalendar"],
function(loaded){
if (!loaded) { //loaded 返回true/false
return ;
}
});
milo.array
milo.getLength(a)
说明:判断数组/对象内容个数
milo.clone(a)
说明:复制数组
milo.hasValue(a, v)
说明:判断数组中是否存在这个值
milo.getArrayKey(a, v)
说明:根据值获得数组中的key
milo.filter(a1, a2)
说明:返回a1数组有a2没有的值
milo.unique(a1, a2)
说明:两个数组的值的交集
milo.number
milo.isInt(d,min,max)
说明:是否某一范围的整数
milo.isFloat(d,min,max)
说明:是否某一范围浮点数
milo.isQQ(d)
说明:是否QQ号码
milo.randomInt(n)
说明:取随机整数0~n间的随机整数
milo.cookie
milo.cookie.set(name,value,expire,domain,path,secure)
说明:设置cookie
milo.cookie.get(name,defaultValue)
说明:获取cookie
milo.cookie.clear(name, domain, path)
说明:清除cookie
milo.object
milo.serialize(o)
说明:序列化JSON对象(对object转化为url参数字符串,各属性间以&分隔,如a=1&b=2&c=3)
milo.unSerialize(s)
说明:反序列化为JSON对象
milo.decode(o)
说明:对整个object进行utf8格式的url解码
milo.dom
milo.browser.version
说明:获取版本号
milo.browser.webkit
说明:是否webkit浏览器
milo.browser.opera
说明:是否opera浏览器
milo.browser.msie
说明:是否IE浏览器
milo.browser.mozilla
说明:是否mozilla浏览器
milo.hasClassName(ele, classname)
说明:判断DOM对象是否存在样式类名称
milo.addClassName(ele, classname)
说明:为DOM对象增加样式类名称
milo.removeClassName(ele, classname)
说明:为DOM对象删除样式类名称
milo.setStyle(ele, o)
说明:为dom对象设置样式
milo.getStyle(ele, prop)
说明:为dom对象获取选定属性的样式
milo.getMaxH()
说明:获取页面最大高度
milo.getMaxW()
说明:获取页面最大宽度
milo.getPageHeight()
说明:网页内容高度
milo.getPageWidth()
说明:网页内容宽度
milo.getWinHeight()
说明:浏览器可视区域高度
milo.getWinWidth()
说明:浏览器可视区域宽度
milo.setOpacity(dom, level)
说明:设置dom透明度
milo.getX(dom)
说明:获取页面中对象的绝对X位置
milo.getY(dom)
说明:获取页面中对象的绝对Y位置
milo.request(param)
说明:获取url中的参数值
milo.event
milo.addEvent(dom,s,fn)
说明:为DOM对象增加事件
milo.addEvent(g('browser'),'click',function(){
alert("是否IE:" + milo.browser.safari + " \n版本号:" + milo.browser.version);
})
milo.removeEvent(dom,s,fn)
说明:为DOM对象移除事件
milo.removeEvent(g('ahref'),'click',bindFun)
milo.ready(fn)
说明:dom ready事件
milo.ready(function(){
console.log('ready')
})
milo.date
milo.toDateString(d)
说明:获取日期 yyyy-mm-dd
milo.toDateTimeString(d)
说明:获取日期和时间 yyyy-mm-dd hh:ii:ss
milo.isLeapYear(year)
说明:是否润年
milo.getSeverDateTime()
说明:获取服务器时间
jquery
调用示例:
need("util.jquery", function(j){
$("p").click();
j("p").click();
})
//加载成功后无论是用jquery提供的$符还是私有返回参数变量,都可以
mini-css 选择器
调用示例:
need("util.mini",function(mini){
try {
alert(mini('div > p').length);
} catch(e) {
alert(e.message);
}
})
drag-dom 拖动操作类
调用示例:
MultiSelect 多项操作绑定
调用示例:
need("util.multiselector", function(MultiSelector){
MultiSelector.create(
[g("selectId1"),g("selectId2")], //select框对象
DataObject, //数据对象
[], //扩展数据
[function(){ //事件
onChangeAreaEvent()
return;
}, function(){
onChangeAreaEvent()
return;
}]
);
})
// select_array select dom对象,以数组形式,按选择顺序排列
// opt_data_array select中数据对象 以数组形式,按选择顺序排列 数组内容为对象,以v,t代表
// ext_data_array select中扩展数据对象 以数组形式,按选择顺序排列
// custom_onchange_fun_array select onchange事件以数组形式,按选择顺序排列
Template 模版
调用示例:更多演示参考
need("util.template",function(template){
var t;
t = template.parseDOMTemplate("test1_jst");
g("out1").innerHTML = t.process(data);
g("out2").innerHTML = t.process(data2);
});
AjaxPage 分页
调用示例:更多演示参考
need("util.ajaxpage",function(jo){
pageShow = new jo({
oPage : "pageShow",
pageId : "listPage",
pageNow : 3,
pageShowNum : 2,//前后最多显示的页数
pageTotal : 10,
style : 134,
onChange : function(i){
alert("跳转到第"+i+"页");
return false;
}
});
});
zeroclipborad 复制
调用示例:更多演示参考
need("util.zeroclipboard", function(ZeroClipboard){
ZeroClipboard.setClipBoard({
btn : "clip_button",
complete : function (client, text) {
alert("该地址已经复制,你可以使用Ctrl+V 粘贴。");
},
text : 'fe_text'
});
});
//如果是在浮层框上提供复制,增加配置:appendElem
login 统一登录
调用示例:更多演示参考
need("biz.login",function(LoginManager){
LoginManager.checkLogin(function(){
g("login_qq_span").innerHTML = LoginManager.getUserUin();
LoginManager.getNickName(function(loginInfo){
if(loginInfo.isLogin){
g("login_nickname_span").innerHTML = loginInfo.nickName;
}
});
LoginManager.getUserDiamond('qqgame',function(obj){
});
});
});
RoleSelector 角色选择
调用示例:更多演示参考
need(["biz.roleselector"],function(RoleSelector){
RoleSelector.init({
'gameId' : 'lol',
'isQueryRole' : true,
'isShutdownSubmit' : false,
'submitEvent' : function(roleObject){
console.log(roleObject);
}
});
});
Dialog-对话框
调用示例:更多演示参考
function showError(){
need("biz.dialog",function(Dialog){
Dialog.show({id:'error',bgcolor:'#f60'});
});
}
function closeError(){
need("biz.dialog",function(Dialog){
Dialog.hide();
});
}
Calendar-日历
调用示例:更多演示参考
need("biz.calendar",function(calendar){
var cal1 = cloneClass(calendar);//继承一个新类,如果你页面上需要显示多个日历的话
cal1.init({
specialday : ["2011-03-02","2011-03-11"],
container : "cal",
onCreateDay : function(day,type,y,m,d){
day.innerHTML = "" + d + "";
}
});
cal1.gotoMonth(2011,03);
});
SignCalendar-签到日历
调用示例:更多演示参考
need(["biz.signCalendar"],function(signCalendar){
signCalendar.init({
startday : "2011-01-15",
endday : "2011-03-15",
specialday : ["2011-01-30","2011-02-03","2011-03-02"],
container : "cal",
NEED_HEAD : false, //是否需要头部
onCreateDay : function(day,type,y,m,d){
day.innerHTML = "" + d + "";
},
signDateList : list
});
signCalendar.gotoMonth(2011,02);
});
SelCalendar-时间选择器
调用示例:更多演示参考
need(["biz.selCalendar"],function(sc){
sc.init({
type : 'datetime', //默认为date, 如为datetime,则会在尾部增加时间输入框
start : 'now' //时间输入框默认值,该项默认为now,如有特殊情况,请输入值为hh-ii-ss的形式
})
});
DelayLoad-延迟加载
调用示例:更多演示参考
need(["biz.delayLoad"]);
Friend-好友选择器
调用示例:更多演示参考
need("biz.friend", function(friend){
friend.show({
limit:15, //一次最多选择数量
showFriend : true, //默认是ture 不要用就设个false
showIdol : false, //微博偶像 默认是false
showFans : false, //微博粉丝 默认是false
showMutual : false, //微博互听 默认是false
showGroup : false, //QQ群好友 默认是false
showGame : false, //游戏好友 默认是false
tabFirst : 'friend', //默认希望显示的tab
gameId : '', //游戏业务 选择showGame=true时,填写此项
submit: function(result){
alert(result);
},
cancel: function(){
alert("cancel");
}
});
})
Json2-
调用示例:更多演示参考
//
Lottery-抽奖领取
调用示例:更多演示参考
//与抽奖领取V3平台配合
need("biz.lottery",function(LotteryManager){
LotteryManager.init({
activityId : 740, //活动号
'hasGetGiftMain' : true, //领取抽奖主模块,必须 default : true
'hasPersonInfo' : false, //是否需要填写个人联系信息 default : false
'hasBroadcast' : false, //是否需要轮播 default : false
'hasMyGiftList' : false, //是否需要个人获奖列表 default : false
'hasGetGiftCenter' :false, //是否需要领取中心领取 default : false
onGetGiftFailureEvent : function(callbackObj){ //发送礼包失败
LotteryManager.alert(callbackObj.retInfo);
},
onGetGiftSuccessEvent : function(callbackObj){ //发送礼包成功
LotteryManager.alert(callbackObj.retInfo);
},
isQueryRole : true, //是否需要查询角色
isAutoRun : true //如轮播需要自动向上滚,则此项为true
})
});
LoveWall-爱墙
调用示例:更多演示参考
need("biz.loveWall",function(loveWall){
loveWall.init("love-wall-wrap",800,400);
})
ProvinceCitySelector-省市选择器
调用示例:更多演示参考
need("biz.provincecityselector",function(pcs){
pcs.show({
provinceId : "p",
cityId : "c",
provinceChange : function(){
},
cityChange : function(city){
console.log(city.v);
console.log(city.t);
}
})
})
SearchSelector-搜索选择器
调用示例:更多演示参考
need("biz.searchselector",function(SearchSelector){
SearchSelector.init({
'selector' : 'aaa'
});
})