前些天看了胡睿制任的 EonerCMS效果,我就被深深吸引了。这种效果很像WebQQ的效果。呵呵。很强大。正好公司一个游戏项目正好在做后台。我就突然冒出来这个想法。
考虑点:
管理员权限分配(使用ajax异步取得管理员权限)
代码片段:
1 protected string AdminList(HttpContext ctt)
2 {
3 StringBuilder sb = new StringBuilder();
4 if (ctt.Session["ManageUserID"] == null || ctt.Session["ManageUserID"].ToString() == "")
5 {
6 return sb.Append("{\"data\":[]}").ToString();
7 }
8 else
9 {
10 Int16 AdminID = Convert.ToInt16(ctt.Session["ManageUserID"].ToString());
11 List<AdminMenuModel> list = AdminServer.GetAdminMenuPermission(AdminID);
12 if (list.Count > 0)
13 {
14 sb.Append("{\"data\":[");
15 for (int i = 0; i < list.Count; i++)
16 {
17 AdminMenuModel model = list[i];
18 if (model.MenuLevel != 1)
19 {
20 if (i == (list.Count-1))
21 {
22 sb.Append("{\"id\":" + (i * 10) + ",\"iconName\":\"" + model.MenuName.Trim() + "\",\"iconUrl\":\"img/shortcut/news.png\",\"url\":\"../" + model.MenuLinkUrl + "\",\"width\":"+model.MenuWidth+",\"height\":"+model.MenuHeight+",\"resize\":true}");
23 }
24 else
25 {
26 sb.Append("{\"id\":" + (i * 10) + ",\"iconName\":\"" + model.MenuName.Trim() + "\",\"iconUrl\":\"img/shortcut/news.png\",\"url\":\"../" + model.MenuLinkUrl + "\",\"width\":" + model.MenuWidth + ",\"height\":" + model.MenuHeight + ",\"resize\":true},");
27 }
28 }
29 }
30 sb.Append("]}");
31 }
32 return sb.ToString();
33 }
34 }
代码片段:
var loadShortcut = function(){
//获取json数组并循环输出每个图标
$.getJSON("js/F_AdminMenuList.ashx",function(sc){
$(ul).html("");
//把返回的json数组存为全局变量
jsonsc = sc;
if(sc['data'].length==0){
ZENG.msgbox.show("登录超时,请点左下方按钮退出重新登录", 4, 30000);
return;
}
for(i=0; i<sc['data'].length; i++){
_cache.shortcutTemp = {"top":_top,"left":_left,"title":sc['data'][i]['iconName'],"shortcut":sc['data'][i]['id'],"imgsrc":sc['data'][i]['iconUrl']};
$(ul).append(FormatModel(shortcutTemp,_cache.shortcutTemp));
//每循环一个图标后,给top的偏移量加90px
_top += 90;
//当下一个图标的top偏移量大于窗口高度时,top归零,left偏移量加90px
if(_top+Core.config.shortcutTop+57 > windowHeight){
_top = Core.config.shortcutTop;
_left += 90;
}
}
});
};
每个窗体的大小问题(在数据库权限表中增加窗体高和宽的大小)
每个菜单的图标问题(在数据库权限表中增加图标路径)
首先实现效果:
主界面:
子窗体界面:
呵呵。感觉使用这种效果当后台,是不是很有个性呢?而且EonerCMS兼容性挺好。我在IE6-IE9都测试了,还有Chrome,火狐下都能测试通过,最主要的就是IE6下是否正常,因为现在网吧基本都使用IE6.
以后再贴代码吧!第一次在cnblogs上发博,每次都是看别人的。呵呵。