软件的用户体验很重要,要抓住用户的心,这篇博文分享一下最近一个项目的UI设计。

我做UI设计是从用户的角度出发的,要去揣摩用户的习惯。

大部分用户都是使用windows操作系统,所以我这套软件的风格也是做成windows式的。

地址:http://121.40.148.178:8080/ 、 用户名:guest,密码:123456

首先看一下首页导航菜单

这个导航菜单其实也是由div拼了来的,另外用css样式调一下就好了,下面给大家看一下加载菜单的代码

      function initStartMenu() {
$('#overlay_startmenu').click(function () {
if ($('#start_menu_panel:visible').length) {
$('#overlay_startmenu').hide();
$('#start_menu_panel').slideUp();
$('.nicescroll-rails').hide();
}
});
$('#start_menu').click(function () {
if ($('#start_menu_panel:visible').length) {
$('#overlay_startmenu').hide();
$('#start_menu_panel').slideUp();
$('.nicescroll-rails').hide();
}
//遮罩层位置和显示
$('#overlay_startmenu').show();
//菜单面板位置
var top = $('#start_menu').offset().top - $('#start_menu_panel').outerHeight() - ;
$('#start_menu_panel').css({ top: top });
$('#start_menu_panel').show();
$('.nicescroll-rails').show();
});
}
//导航一级菜单
var StartmenuJson = "";
function GetStartmenu() {
var index = ;
var html = "";
getAjax("/Home/LoadStartMenu", "", function (data) {
StartmenuJson = eval("(" + data + ")");
$.each(StartmenuJson, function (i) {
if (StartmenuJson[i].ParentId == '9f8ce93a-fc2d-4914-a59c-a6b49494108f') {
html += "<li>";
if (index == ) {
html += "<div class='main_menu leftselected' onclick=\"GetSubmenu('" + StartmenuJson[i].ModuleId + "')\">";
GetSubmenu(StartmenuJson[i].ModuleId);
} else {
html += "<div onclick=\"GetSubmenu('" + StartmenuJson[i].ModuleId + "')\">";
}
html += "<img src='../Content/Images/Icon32/" + StartmenuJson[i].Icon + "' width='32' height='32'>" + StartmenuJson[i].FullName + "";
html += "</div>";
html += "</li>";
index++;
}
});
})
$("#htmlMenu").append(html);
var menuheight = $('.main_menu div').height() * $('.main_menu li').length + $('.main_menu li').length + ;
if (menuheight <= ) {
menuheight =
}
$(".panel-menu").height(menuheight);
$("#main_menu").height(menuheight);
$("#Submenu").height(menuheight);
divniceScroll("#Submenu");
readyIndex();
}
//导航子菜单
function GetSubmenu(ModuleId) {
$("#Submenu").html("");
var html = "";
$.each(StartmenuJson, function (i) {
if (StartmenuJson[i].ParentId == ModuleId) {
var Icon = "";
if (StartmenuJson[i].Icon != "") {
Icon = StartmenuJson[i].Icon;
}
if (IsBelowMenu(StartmenuJson[i].ModuleId) > ) {
html += "<div title='" + StartmenuJson[i].FullName + "' class=\"shortcuticons\" onclick=\"GetSubmenu('" + StartmenuJson[i].ModuleId + "')\"><img src='../Content/Images/Icon32/" + Icon + "'><br />" + StartmenuJson[i].FullName + "</div>";
} else {
html += "<div title='" + StartmenuJson[i].FullName + "' class=\"shortcuticons\" onclick=\"AddTabMenu('" + StartmenuJson[i].ModuleId + "', '" + RootPath() + StartmenuJson[i].Location + "', '" + StartmenuJson[i].FullName + "', '" + StartmenuJson[i].Icon + "','true');\"><img src='../Content/Images/Icon32/" + Icon + "'><br />" + StartmenuJson[i].FullName + "</div>";
}
}
});
$("#Submenu").html(html);
}
//判断是否有子节点
function IsBelowMenu(ModuleId) {
var count = ;
$.each(StartmenuJson, function (i) {
if (StartmenuJson[i].ParentId == ModuleId) {
count++;
return false;
}
});
return count;
}

以上就是页面上去加载菜单的代码,那后台要写些什么东西呢?获得一下菜单信息就好了,我们把菜单的图标、名称、路径都存在数据库里,后台写个方法取出来转成Json让上面这个JS方法去调用就好了。

下面这个是列表页,表格插件用的是jqgrid,看起来还不错加载速度也蛮快的

下面这个是弹出窗,看起来是不是有点像windows窗口了。

这里是以另外一种方式显示人员信息,用图片加数据显示明细。其实这里也是先把数据取出来,然后再组成一个个的div,div好控制,图片文字都可以放。

以下这个也是同样的道理,点击后更新了一下div的图标,我们就看到了下面的小勾勾

是的,学会了使用div排版真的是很方便,这个容器什么都可以放,左边弄了个tree出来

看看一面的下拉框,其实也是动态加载出来的,使用div+css+ajax界面真的可以做得很灵活,用户体验也非常好。

ASP.NET MVC快速开发框架清新简洁界面设计,有兴趣可以模仿参考的更多相关文章

  1. ASP.NET MVC快速开发框架FastExecutor开发全过程感受及总结

    困境 追溯到2018年5月份,是个炎热的夏天,毕业后1年7个月我提出了离职,原因是受不了原来公司过度的封装框架感觉一年多毫无进步与实施天天轰炸般的电话,偶然间出去面试了一次发现自己知识真的是比较局限, ...

  2. ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets(转)

    jqwidgets.js: 是一个功能完整的框架,它具有专业的可触摸的jQuery插件.主题.输入验证.拖放插件.数据适配器,内置WAI-ARIA(无障碍网页应用)可访问性.国际化和MVVM模式支持. ...

  3. ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets

    jqwidgets.js: 是一个功能完整的框架,它具有专业的可触摸的jQuery插件.主题.输入验证.拖放插件.数据适配器,内置WAI-ARIA(无障碍网页应用)可访问性.国际化和MVVM模式支持. ...

  4. MVC 快速开发框架

    ASP.NET MVC 快速开发框架之 SqlSugar+SyntacticSugar+JQWidgetsSugar+jqwidgets jqwidgets.js: 是一个功能完整的框架,它具有专业的 ...

  5. 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  6. 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  7. 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  8. 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  9. 【第二篇】ASP.NET MVC快速入门之数据注解(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

随机推荐

  1. 链接oracle数据库 生成表对应的javabean

    package com.databi.utils; import java.io.File; import java.io.FileOutputStream; import java.io.IOExc ...

  2. [BZOJ2946] [Poi2000]公共串解题报告|后缀数组

    给出几个由小写字母构成的单词,求它们最长的公共子串的长度. 单词个数<=5,每个单词长度<=2000     尽管最近在学的是SAM...但是看到这个题还是忍不住想写SA... (其实是不 ...

  3. SSM初步整合一

    SSM(spring+springmvc+mybatis)初步整合一配置步骤: 步骤一.导入所需jar包 步骤二 .配置web.xml文件 <?xml version="1.0&quo ...

  4. usaco 2000 contest 滑雪

    2013-09-11 10:22 [题目大意]给定N个点的高度和M条相连的路线(单向),从最高点向下走, 到无法走时为一条路径,求不同的路径数,(一节点不同就叫不同) [输入样例] 4 5   (N, ...

  5. 用 C# 代码如何实现让你的电脑关机,重启,注销,锁定,休眠,睡眠

    简介 本文讲述了用 C# 代码如何实现让你的电脑关机,重启,注销,锁定,休眠,睡眠. 如何实现 首先,使用 using 语句添加我们需要的命名空间: using System.Diagnostics; ...

  6. SEH

    @author: dlive SEH是Windows的异常处理机制,在程序源代码中使用__try,__catch,__finally关键字来具体实现. 但SEH与C++的try, catch异常处理不 ...

  7. PHP HERE DOCUMENT

    转自: http://www.codeweblog.com/php%E4%B8%ADheredoc%E7%9A%84%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95/ Here ...

  8. MyBatis3-实现多表关联数据的查询

    前提: 1.新建Article表和增加模拟数据,脚本如下: Drop TABLE IF EXISTS `article`; Create TABLE `article` ( `id` ) NOT NU ...

  9. Linux下安装Sybase ASE 16

    https://jingyan.baidu.com/article/414eccf67281a16b421f0a76.html

  10. ubantu启动盘制作

    转载自http://jingyan.baidu.com/article/b24f6c82cf50e086bfe5dae9.html 1 首先打开UltraISO软件,没有的请百度搜索,下载安装,尽量下 ...