使用Layui制作界面及功能
本期精彩:使用前端框架Layui制作常用界面,并且實現對應的功能 b( ̄▽ ̄)d
一、什么是Layui
- ? ?官方網站:https://www.layui.com/(已下線)
- ? ?參考地址:http://layui.org.cn/demo/index.html(非官網)👇
它是由國人開發(作者賢心)的,16年出廠的框架,其主要提供了很多好看、方便的樣式,并且基本拿來即用,和Bootstrap有些相似,但該框架有個極大的好處就是定義了很多前后端交互的樣式接口,如分頁表格,只需在前端配置好接口,后端則按照定義好的接口規則返回數據,即可完成頁面的展示,極大減少了后端人員的開發成本
二、Layui、Easyui與Bootstrap的對比
1、layui、easyui、bootstrap的對比
有趣的對比方式👇
easyui=jquery+html4(用來做后臺的管理界面) 半老徐娘,風韻猶存
bootstrap=jquery+html5 ?要錢
layui 清純少女
2、?layui和bootstrap對比(這兩個都屬于UI渲染框架)
a、歷史發展對比
- layui是國人開發的一套框架,2016年出來的,現在已更新到2.X版本了。比較新,輕量級,樣式簡單好看(目前官網已下架,開源了)
- bootstrap 相對來說是比較成熟的一個框架,現在已經更新到4.X版本。是一個很成熟的框架,這個大部分人一般都用過
b、適用范圍對比
- layui其實更偏向與后端開發人員使用,在服務端頁面上有非常好的效果,適合做后臺框架
- layui 是提供給后端開發人員最好的ui框架,基于DOM驅動,在實現前端交互上比較麻煩,頁面的增刪改查都需要查詢DOM元素。所以在不需要交互的時候,用layui還是不錯的(說這句話的人,只能說明你對layui不了解)
- bootstrap 在前端響應式方面做得很好,PC端和移動端表現都不錯,適合做網站
如果是類似官網,且需要同時滿足PC端和移動端效果,bootstrap 表現很好,但是如果是要交互的網站,比如商城之類,layui顯然更好,前后端分離
c、大小對比
- layui 輕量級
- bootsrap 因為成熟,所以使用方便,但是同時也是因為成熟,就顯得有些冗余
3、layui和easyui對比
三、Layui的使用
使用前的引入?
第一步:?將layui下載到本地
第二步:將其完整地放置到你的項目目錄(或靜態資源服務器)
?第三步:并在頁面中分別引入👇
<!-- 引入 layui.css --><link rel="stylesheet" href="xxx/layui.css"><!-- 引入 layui.js --><script src="xxx/layui.js">擴展一個layui(自定義模塊)
? 1、確認模塊名,假設為:test.js文件放入項目任意目錄下(注意:不用放入layui目錄)
? 2、編寫test.js
layui.define(function(exports){//模塊也可以依賴其它模塊,如layui.define('layer',callback);var obj = {hello: function(str){alert('Hello '+ (str||'test'));}};//輸出test接口exports('test', obj);}); ??? 3、設定擴展模塊所在的目錄,然后就可以在別的JS文件中使用
?layui.config({base: '/res/js/' //假設這是test.js所在的目錄}).extend({ //設定模塊別名test: 'test' //如果test.js是在根目錄,也可以不用設定別名});//使用testlayui.use('test', function(){var test = layui.test;test.hello('World!'); //彈出Hello World!});四、登陸界面及功能的制作?
1、導入相關jar包
?
2、代碼的編寫
- 為了方便后續的導入和使用,我們可以將導入Layui的代碼和一些其他的公共方法等封裝在一個通用幫助類CommonUtils中👇?
- 編寫用戶實體類
- 參考并使用Layui官方文檔編寫登陸界面
????????1、先封裝樣式
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <% request.setAttribute("ctx", request.getContextPath()); %> <meta name="viewport" content="width=device-width,initial-scale=1.33,minimum-scale=1.0,maximum-scale=1.0"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="renderer" content="webkit"> <meta http-equiv="Content-Language" content="zh-CN"> <link rel="stylesheet" rev="stylesheet" href="${ctx}/css/iconfont.css" type="text/css" media="all"> <link rel="stylesheet" rev="stylesheet" href="${ctx}/css/login.css" type="text/css" media="all"> <link rel="stylesheet" rev="stylesheet" href="${ctx}/js/layui/css/layui.css" type="text/css" media="all"> <script type="text/javascript" src="${ctx}/js/layui/layui.js"></script> <script type="text/javascript" src="${ctx}/js/config.js"></script> <script> var ctx = "${ctx}"; </script>? ? ? ? 2、登陸界面代碼
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <html><head><%@include file="/common/head.jsp" %><style>body {color: #;}a {color: #;}a:hover {color: #;}.bg-black {background-color: #;}.tx-login-bg {background: url(images/bg.jpg) no-repeat 0 0;}</style><script type="text/javascript">layui.use(['jquery','layer'], function() {let $ = layui.jquery;let layer = layui.layer;$("#login").click(function() {$.ajax({url: ctx + "/loginAction.action?methodName=login",data: {name: $("#username").val(),password: $("#password").val()},type: 'post',dataType: 'json',success: function(resp) {if(resp.code == 1) {layer.alert('酷斃了', {icon: 1});} else {layer.alert('失敗了', {icon: 5});} }})})});</script> </head><body class="tx-login-bg"><div class="tx-login-box"><div class="login-avatar bg-black"><i class="iconfont icon-wode"></i></div><ul class="tx-form-li row"><li class="col-24 col-m-24"><p><input type="text" id="username" placeholder="登錄賬號" class="tx-input"></p></li><li class="col-24 col-m-24"><p><input type="password" id="password" placeholder="登錄密碼" class="tx-input"></p></li><li class="col-24 col-m-24"><p class="tx-input-full"><button id="login" class="tx-btn tx-btn-big bg-black">登錄</button></p></li><li class="col-12 col-m-12"><p><a href="#" class="f-12 f-gray">新用戶注冊</a></p></li><li class="col-12 col-m-12"><p class="ta-r"><a href="#" class="f-12 f-gray">忘記密碼</a></p></li></ul></div></body> </html>3、最終效果
登陸成功時👇?
登陸失敗時👇?
?
總結
以上是生活随笔為你收集整理的使用Layui制作界面及功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鼠标右键编辑html文档,鼠标右键菜单编
- 下一篇: uniapp 实现聊天页面 textar