Compare commits
2 Commits
30e21b71fb
...
a7fa70532c
Author | SHA1 | Date |
---|---|---|
|
a7fa70532c | |
|
6888028201 |
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"liveServer.settings.port": 5501
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"companyName": "DefaultCompany",
|
||||
"productName": "FuZhou_FirstPage",
|
||||
"productVersion": "1.0",
|
||||
"dataUrl": "APP.data.unityweb",
|
||||
"wasmCodeUrl": "APP.wasm.code.unityweb",
|
||||
"wasmFrameworkUrl": "APP.wasm.framework.unityweb",
|
||||
"graphicsAPI": ["WebGL 2.0","WebGL 1.0"],
|
||||
"webglContextAttributes": {"preserveDrawingBuffer": false},
|
||||
"splashScreenStyle": "Dark",
|
||||
"backgroundColor": "#231F20",
|
||||
"cacheControl": {"default": "must-revalidate"},
|
||||
"developmentBuild": false,
|
||||
"multithreading": false,
|
||||
"unityVersion": "2019.4.9f1"
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
function UnityProgress(unityInstance, progress) {
|
||||
if (!unityInstance.Module)
|
||||
return;
|
||||
if (!unityInstance.logo) {
|
||||
unityInstance.logo = document.createElement("div");
|
||||
unityInstance.logo.className = "logo " + unityInstance.Module.splashScreenStyle;
|
||||
unityInstance.container.appendChild(unityInstance.logo);
|
||||
}
|
||||
if (!unityInstance.progress) {
|
||||
unityInstance.progress = document.createElement("div");
|
||||
unityInstance.progress.className = "progress " + unityInstance.Module.splashScreenStyle;
|
||||
unityInstance.progress.empty = document.createElement("div");
|
||||
unityInstance.progress.empty.className = "empty";
|
||||
unityInstance.progress.appendChild(unityInstance.progress.empty);
|
||||
unityInstance.progress.full = document.createElement("div");
|
||||
unityInstance.progress.full.className = "full";
|
||||
unityInstance.progress.appendChild(unityInstance.progress.full);
|
||||
unityInstance.container.appendChild(unityInstance.progress);
|
||||
}
|
||||
unityInstance.progress.full.style.width = (100 * progress) + "%";
|
||||
unityInstance.progress.empty.style.width = (100 * (1 - progress)) + "%";
|
||||
if (progress == 1)
|
||||
unityInstance.logo.style.display = unityInstance.progress.style.display = "none";
|
||||
}
|
After Width: | Height: | Size: 2.3 MiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 345 B |
After Width: | Height: | Size: 155 B |
After Width: | Height: | Size: 159 B |
After Width: | Height: | Size: 137 B |
After Width: | Height: | Size: 142 B |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 2.2 KiB |
|
@ -0,0 +1,40 @@
|
|||
function _registerEvent (target, eventType, cb) {
|
||||
if (target.addEventListener) {
|
||||
target.addEventListener(eventType, cb)
|
||||
return {
|
||||
remove: function () {
|
||||
target.removeEventListener(eventType, cb)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
target.attachEvent(eventType, cb)
|
||||
return {
|
||||
remove: function () {
|
||||
target.detachEvent(eventType, cb)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export function openUriWithTimeoutHack (uri, failCb, successCb) {
|
||||
const timeout = setTimeout(function () {
|
||||
failCb()
|
||||
handler.remove()
|
||||
}, 1500)
|
||||
|
||||
// handle page running in an iframe (blur must be registered with top level window)
|
||||
let target = window
|
||||
while (target != target.parent) {
|
||||
target = target.parent
|
||||
}
|
||||
|
||||
var handler = _registerEvent(target, 'blur', onBlur)
|
||||
|
||||
function onBlur () {
|
||||
clearTimeout(timeout)
|
||||
handler.remove()
|
||||
successCb()
|
||||
}
|
||||
|
||||
window.location = uri
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
body {
|
||||
overflow: hidden;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.webgl-content * {border: 0; margin: 0; padding: 0 ;background: url('bg.jpg');}
|
||||
.webgl-content {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
|
||||
|
||||
.webgl-content .logo, .progress {position: absolute; left: 50%; top: 30%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
|
||||
/* .webgl-content .logo {background: url('progressLogo.Light.png') no-repeat center / contain; width: 154px; height: 130px;} */
|
||||
.webgl-content .progress {height: 18px; width: 141px; margin-top: 90px;}
|
||||
.webgl-content .progress .empty {background: url('progressEmpty.Light.png') no-repeat right / cover; float: right; width: 100%; height: 100%; display: inline-block;}
|
||||
.webgl-content .progress .full {background: url('progressFull.Light.png') no-repeat left / cover; float: left; width: 0%; height: 100%; display: inline-block;}
|
||||
|
||||
.webgl-content .logo.Dark {background-image: url('progressLogo.Dark.png');}
|
||||
.webgl-content .progress.Dark .empty {background-image: url('progressEmpty.Dark.png');}
|
||||
.webgl-content .progress.Dark .full {background-image: url('progressFull.Dark.png');}
|
||||
|
||||
.webgl-content .footer {margin-top: 5px; height: 38px; line-height: 38px; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 18px;}
|
||||
.webgl-content .footer .webgl-logo, .title, .fullscreen {height: 100%; display: inline-block; background: transparent center no-repeat;}
|
||||
.webgl-content .footer .webgl-logo {background-image: url('webgl-logo.png'); width: 204px; float: left;}
|
||||
.webgl-content .footer .title {margin-right: 10px; float: right;}
|
||||
.webgl-content .footer .fullscreen {background-image: url('fullscreen.png'); width: 38px; float: right;}
|
||||
|
After Width: | Height: | Size: 3.5 KiB |
|
@ -0,0 +1,92 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en-us">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>Unity WebGL Player | FuZhou_FirstPage</title>
|
||||
<link rel="shortcut icon" href="TemplateData/favicon.ico">
|
||||
<link rel="stylesheet" href="TemplateData/style.css">
|
||||
<script src="TemplateData/UnityProgress.js"></script>
|
||||
<script src="Build/UnityLoader.js"></script>
|
||||
<script src="TemplateData/protocolcheck.js" type="module"></script>
|
||||
<!-- <script src="../../src/utils/protocolcheck.js" type="module"></script>
|
||||
<script src="../../src/api/map.js"></script> -->
|
||||
<!-- import {exitAppApi, generateTrainingTicket, getLatestStarterVersion} from "../api/business/training"; -->
|
||||
<!-- import {openUriWithTimeoutHack} from "./protocolcheck"; -->
|
||||
<script>
|
||||
// import { openUriWithTimeoutHack } from 'TemplateData/protocolcheck.js';
|
||||
// import {openUriWithTimeoutHack} from "../../src/utils/protocolcheck.js";
|
||||
// import {GetLatestVersion} from "../../src/api/map.js";
|
||||
var unityInstance = UnityLoader.instantiate("unityContainer", "Build/APP.json", {onProgress: UnityProgress});
|
||||
function OnWake(){
|
||||
const href = window.location.href
|
||||
const regex = /^https?:\/\/([^/:]+):?(\d+)?/i
|
||||
const match = href.match(regex)
|
||||
console.log('match', match)
|
||||
// const dialogImageUrl = match[1]
|
||||
const dialogImageUrl = '172.16.1.253'
|
||||
unityInstance.SendMessage('FirstPanel','InitUnity',dialogImageUrl)
|
||||
}
|
||||
function StartModel(data){
|
||||
console.log("data",data)
|
||||
|
||||
window.parent.openUriWithTimeoutHackN(JSON.parse(data));
|
||||
// openUriWithTimeoutHackN(data)
|
||||
}
|
||||
// function openUriWithTimeoutHackN(data) {
|
||||
// console.log('cscs', data)
|
||||
// const href = window.location.href
|
||||
// const regex = /^https?:\/\/([^/:]+):?(\d+)?/i
|
||||
// const match = href.match(regex)
|
||||
// console.log('match', match)
|
||||
// // const dialogImageUrl = match[0]
|
||||
// // const dialogImageUrl2 = match[1]
|
||||
// const dialogImageUrl = 'http://172.16.1.253:4000'
|
||||
// const dialogImageUrl2 = '172.16.1.253'
|
||||
// const ModelResourcesE = encodeURIComponent(dialogImageUrl + data.ModelResources)
|
||||
// console.log('ModelResourcesE', ModelResourcesE)
|
||||
// //
|
||||
// openUriWithTimeoutHack(
|
||||
// 'starter://' + `;${ModelResourcesE};${data.ModelResourcesPath};${data.RegistryName};${data.MONITOR_ID};${data.VersionNumber};${data.CUSTOMS_CODE};${data.ModelName};${data.TrainingSize};${dialogImageUrl2};`,
|
||||
// () => {
|
||||
// ElMessageBox.confirm('启动器未安装,启动应用前需要先安装启动器,现在去下载吗?', '提示', {
|
||||
// confirmButtonText: '下载',
|
||||
// cancelButtonText: '取消',
|
||||
// type: 'warning'
|
||||
// })
|
||||
// .then(() => {
|
||||
// // debugger
|
||||
// // 打开启动器下载路径
|
||||
// GetLastVersion().then((res) => {
|
||||
// console.log('res', res)
|
||||
// window.open(dialogImageUrl + res.data.LauncherResources)
|
||||
// }).catch(() => {
|
||||
// // exitApp(startParams.trainingId)
|
||||
// ElMessage.error('获取启动器下载路径失败')
|
||||
// })
|
||||
// })
|
||||
// .catch(() => {
|
||||
// // exitApp(startParams.trainingId)
|
||||
// console.log('取消下载')
|
||||
// })
|
||||
// },
|
||||
// () => {
|
||||
// console.log('已安装,自动唤起')
|
||||
// }
|
||||
// )
|
||||
// }
|
||||
// 启动启动器
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="webgl-content" style="height: 100%;width: 100%;" >
|
||||
<div id="unityContainer" style="height: 100%;width: 100%;" ></div>
|
||||
<!-- <div class="footer">
|
||||
<div class="webgl-logo"></div>
|
||||
<div class="fullscreen" onclick="unityInstance.SetFullscreen(1)"></div>
|
||||
<div class="title">FuZhou_FirstPage</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 62 KiB |
After Width: | Height: | Size: 18 KiB |
|
@ -0,0 +1 @@
|
|||
import{_ as S,q as B,u as b,r as x,m as T,b as c,c as C,d as k,F as w,s as N,v as j,w as n,i as A,t as I,x as $,f as a,e as i,g as p,p as E,j as F}from"./index-DNLxjT0X.js";const r=[{path:"ExaminationManagement",meta:{sort:1,title:"启动器管理",icon:"icon-kaoshi"}},{path:"home",meta:{sort:1,title:"模型管理",icon:"icon-chengji"}}],L={class:"tag-list"},O={__name:"Tab",setup(d){const g=B(),v=b(),s=x([]),e=x(1),o=(t,u)=>{v.push(t.path),e.value=u},f=t=>{const u=s.value[e.value].path;if(s.value.splice(t,1),e.value===t)e.value=t>0?t-1:1,v.push(s.value[e.value].path);else{const _=s.value.findIndex(l=>l.path===u);e.value=_}};return T(()=>g,(t,u)=>{s.value.findIndex(l=>l.path===t.path)<0&&t.meta.title!==""&&(s.value.push({name:t.meta.title,path:t.path}),e.value=s.value.length-1)},{immediate:!0,deep:!0}),(t,u)=>{const _=c("el-tag");return C(),k("div",L,[(C(!0),k(w,null,N(s.value,(l,m)=>(C(),j(_,{key:l.name,closable:"",class:$({isActive:e.value===m}),onClick:h=>o(l,m),onClose:h=>f(m)},{default:n(()=>[A(I(l.name),1)]),_:2},1032,["class","onClick","onClose"]))),128))])}}},R=S(O,[["__scopeId","data-v-bf4a46ed"]]),q=d=>(E("data-v-0910c239"),d=d(),F(),d),z={class:"common-layout"},D=q(()=>i("div",{class:"img"},null,-1)),M={class:"Sidebar"},V={class:"Tool"},G={__name:"index",setup(d){b();const g=x(!1),v=(e,o)=>{console.log(e,o)},s=(e,o)=>{console.log(e,o)};return(e,o)=>{const f=c("el-header"),t=c("el-menu-item"),u=c("el-menu"),_=c("el-aside"),l=c("router-view"),m=c("el-main"),h=c("el-container");return C(),k("section",z,[a(h,{class:"layout"},{default:n(()=>[a(f,null,{default:n(()=>[a(f,null,{default:n(()=>[D]),_:1})]),_:1}),a(h,{class:"ContainerConent"},{default:n(()=>[a(_,null,{default:n(()=>[i("aside",null,[i("div",M,[a(u,{"default-active":"0",class:"el-menu-vertical-demo",collapse:g.value,onOpen:v,onClose:s},{default:n(()=>[a(t,{index:String(0),onClick:o[0]||(o[0]=y=>e.$router.push(p(r)[0].path))},{title:n(()=>[i("i",{class:$(["iconfont",p(r)[0].meta.icon])},null,2),i("span",null,I(p(r)[0].meta.title),1)]),_:1},8,["index"]),a(t,{index:String(1),onClick:o[1]||(o[1]=y=>e.$router.push(p(r)[1].path))},{title:n(()=>[i("i",{class:$(["iconfont",p(r)[1].meta.icon])},null,2),i("span",null,I(p(r)[1].meta.title),1)]),_:1},8,["index"])]),_:1},8,["collapse"])])])]),_:1}),a(h,{class:"mainContent"},{default:n(()=>[i("div",V,[a(R)]),a(m,null,{default:n(()=>[a(l)]),_:1})]),_:1})]),_:1})]),_:1})])}}},J=S(G,[["__scopeId","data-v-0910c239"]]);export{J as default};
|
|
@ -0,0 +1 @@
|
|||
.loginPage[data-v-64ec6f24]{width:100vw;height:100vh;overflow:hidden}.loginLayout[data-v-64ec6f24]{width:100%;height:100%;background:url(./Login-CCT4jEB2.png) no-repeat;background-size:100% 100%;display:flex;align-items:center;justify-content:center}.loginTitle[data-v-64ec6f24]{display:flex;justify-content:center;margin-bottom:36px}.loginTitle img[data-v-64ec6f24]{width:60px;height:60px;margin-right:24px}.loginTitle p[data-v-64ec6f24]{height:46px;line-height:46px;font-family:DouyinSansBold;font-weight:700;font-size:38px;color:#0d867f;margin-top:11px;letter-spacing:1px}.loginInput[data-v-64ec6f24]{width:506px;height:402px;background:#fdfffd;box-shadow:0 0 12px #a0c2b64a;border-radius:10px;padding:0 63px;overflow:hidden}.loginInput p[data-v-64ec6f24]{width:100%;text-align:center;font-weight:400;font-size:20px;color:#333;line-height:30px;margin-top:50px;margin-bottom:52px}.loginInput .el-button[data-v-64ec6f24]{width:380px;height:50px;background:#0d867f;border:none;border-radius:2px;font-weight:400;font-size:16px;color:#fff;line-height:24px}.login_from .el-input[data-v-64ec6f24]{height:50px;border:1px solid #0d867f}.login_from .el-form-item--default[data-v-64ec6f24]{margin-bottom:30px}.login_from[data-v-64ec6f24] .el-input__wrapper{border-radius:0!important;box-shadow:none!important}.login_from[data-v-64ec6f24] .el-input__wrapper:hover{box-shadow:none!important}[data-v-64ec6f24] .el-input{--el-input-focus-border-color: transparent !important}
|
|
@ -0,0 +1 @@
|
|||
.PageContent[data-v-bbb4b702]{width:100%;height:100%}.WebToolbar[data-v-bbb4b702]{width:100%;height:72px;background-color:#fff;padding:20px;display:flex;justify-content:space-between}.WebToolbar[data-v-bbb4b702] .el-form-item__content{width:256px!important;height:32px!important}.WebToolbar[data-v-bbb4b702] .el-input,.WebToolbar[data-v-bbb4b702] .el-select{width:256px!important}.WebToolbar[data-v-bbb4b702] .el-form-item__label{color:#666!important}.ButtonAssembly .el-button[data-v-bbb4b702]{width:84px;height:32px;border:none;font-weight:400;font-size:14px;border-radius:2px}.ButtonAssembly .el-button img[data-v-bbb4b702]{width:16px;height:16px;margin-right:8px}.ButtonAssembly .el-button[data-v-bbb4b702]:nth-child(1){background-color:#0d867f}.ButtonAssembly .el-button[data-v-bbb4b702]:nth-child(2){background-color:#f2f3f5}.Tabulation[data-v-bbb4b702]{width:100%;height:calc(100% - 72px);background-color:#fff;margin-top:14px;padding:20px}.Tabulation .actionBar[data-v-bbb4b702]{display:flex;justify-content:space-between}.Tabulation .actionBar h1[data-v-bbb4b702]{font-weight:500;font-size:20px;color:#1d2129;line-height:28px;font-family:Microsoft YaHei,Microsoft YaHei}.Tabulation .Worktop .el-button[data-v-bbb4b702]{border:1px solid #0d867f;font-weight:400;font-size:14px;color:#0d867f}.Tabulation .Worktop .el-button[data-v-bbb4b702]:hover{background-color:transparent}.Tabulation .Worktop .BlueBack[data-v-bbb4b702]{background:#0d867f;border-radius:2px;font-weight:400;font-size:14px;color:#fff;line-height:22px}.Tabulation .Worktop .BlueBack img[data-v-bbb4b702]{width:16px;height:16px;margin-right:8px}.Tabulation .Worktop .BlueBack[data-v-bbb4b702]:hover{background-color:#0d867f}.Tabulation .Worktop .Delete[data-v-bbb4b702]{background:#f2f3f5;border-radius:2px;font-weight:400;font-size:14px;color:#1d2129;line-height:22px;border:none}.Tabulation .Worktop .Delete img[data-v-bbb4b702]{width:16px;height:16px;margin-right:8px}.Tabulation .Worktop .Delete[data-v-bbb4b702]:hover{background-color:#f2f3f5}.Tabulation .ExaminationForm[data-v-bbb4b702]{margin-top:16px;background-color:#07a}.Tabulation .el-table tr[data-v-bbb4b702],.Tabulation .el-table td[data-v-bbb4b702]{height:41px}.Tabulation[data-v-bbb4b702] th{background-color:#e5e6eb}.el-pagination[data-v-bbb4b702]{float:right;background-color:#fff!important;margin-top:18px}[data-v-bbb4b702] .el-pager li.is-active{background-color:#e7f9f8!important;font-weight:400;color:#0d867f!important}[data-v-bbb4b702] .el-table--enable-row-hover .el-table__body tr:hover>td{background-color:#e7f9f8!important}[data-v-bbb4b702] .el-select,[data-v-bbb4b702] .el-input{width:280px!important}.example[data-v-bbb4b702]{margin-left:20px;color:red}.backInformation[data-v-bbb4b702] .el-input{width:280px!important;height:120px!important}.dialog-footer[data-v-bbb4b702]{width:100%;text-align:center}[data-v-bbb4b702] .el-textarea__inner{width:280px!important}.user-name[data-v-bbb4b702],.register[data-v-bbb4b702]{cursor:pointer}.functionalUnit[data-v-bbb4b702]{margin-left:20px;display:flex}.functionalUnit .el-button[data-v-bbb4b702]{width:84px;height:32px;border:none;font-weight:400;font-size:14px;border-radius:2px;color:#fff}.functionalUnit .el-button img[data-v-bbb4b702]{width:16px;height:16px;margin-right:8px}.functionalUnit .el-button[data-v-bbb4b702]:nth-child(1){background-color:#2192ba}.functionalUnit .el-button[data-v-bbb4b702]:nth-child(2){background-color:#17c85f}.TabularTitle[data-v-bbb4b702]{font-size:14px;color:#747272;font-weight:700;margin-bottom:10px}.pagination[data-v-bbb4b702]{width:100%;height:30px}.pagination[data-v-bbb4b702] .el-pagination{margin-top:9px!important}.addSlip .el-button[data-v-bbb4b702]{border:none;background-color:#07a;margin-top:8px;color:#fff}.addSlip[data-v-bbb4b702] .el-pagination{margin-top:8px!important}.ml-3[data-v-bbb4b702]{margin-left:20px}.upload-file-uploader[data-v-bbb4b702]{width:50%}.el-upload-list .el-upload-list__item[data-v-bbb4b702]{width:33%!important;float:left;margin-left:-385px;margin-top:25px}.el-upload-list .el-upload-list__item[data-v-bbb4b702] .horizontal-list ul .el-upload-list__item{width:33%;float:left;margin-top:25px}
|
|
@ -0,0 +1 @@
|
|||
.PageContent[data-v-a2431556]{width:100%;height:100%}.WebToolbar[data-v-a2431556]{width:100%;height:72px;background-color:#fff;padding:20px;display:flex;justify-content:space-between}.WebToolbar[data-v-a2431556] .el-form-item__content{width:256px!important;height:32px!important}.WebToolbar[data-v-a2431556] .el-input,.WebToolbar[data-v-a2431556] .el-select{width:256px!important}.WebToolbar[data-v-a2431556] .el-form-item__label{color:#666!important}.ButtonAssembly .el-button[data-v-a2431556]{width:84px;height:32px;border:none;font-weight:400;font-size:14px;border-radius:2px}.ButtonAssembly .el-button img[data-v-a2431556]{width:16px;height:16px;margin-right:8px}.ButtonAssembly .el-button[data-v-a2431556]:nth-child(1){background-color:#0d867f}.ButtonAssembly .el-button[data-v-a2431556]:nth-child(2){background-color:#f2f3f5}.Tabulation[data-v-a2431556]{width:100%;height:calc(100% - 72px);background-color:#fff;margin-top:14px;padding:20px}.Tabulation .actionBar[data-v-a2431556]{display:flex;justify-content:space-between}.Tabulation .actionBar h1[data-v-a2431556]{font-weight:500;font-size:20px;color:#1d2129;line-height:28px;font-family:Microsoft YaHei,Microsoft YaHei}.Tabulation .Worktop .el-button[data-v-a2431556]{border:1px solid #0d867f;font-weight:400;font-size:14px;color:#0d867f}.Tabulation .Worktop .el-button[data-v-a2431556]:hover{background-color:transparent}.Tabulation .Worktop .BlueBack[data-v-a2431556]{background:#0d867f;border-radius:2px;font-weight:400;font-size:14px;color:#fff;line-height:22px}.Tabulation .Worktop .BlueBack img[data-v-a2431556]{width:16px;height:16px;margin-right:8px}.Tabulation .Worktop .BlueBack[data-v-a2431556]:hover{background-color:#0d867f}.Tabulation .Worktop .Delete[data-v-a2431556]{background:#f2f3f5;border-radius:2px;font-weight:400;font-size:14px;color:#1d2129;line-height:22px;border:none}.Tabulation .Worktop .Delete img[data-v-a2431556]{width:16px;height:16px;margin-right:8px}.Tabulation .Worktop .Delete[data-v-a2431556]:hover{background-color:#f2f3f5}.Tabulation .ExaminationForm[data-v-a2431556]{margin-top:16px;background-color:#07a}.Tabulation .el-table tr[data-v-a2431556],.Tabulation .el-table td[data-v-a2431556]{height:41px}.Tabulation[data-v-a2431556] th{background-color:#e5e6eb}.el-pagination[data-v-a2431556]{float:right;background-color:#fff!important;margin-top:18px}[data-v-a2431556] .el-pager li.is-active{background-color:#e7f9f8!important;font-weight:400;color:#0d867f!important}[data-v-a2431556] .el-table--enable-row-hover .el-table__body tr:hover>td{background-color:#e7f9f8!important}[data-v-a2431556] .el-select,[data-v-a2431556] .el-input{width:280px!important}.example[data-v-a2431556]{margin-left:20px;color:red}.backInformation[data-v-a2431556] .el-input{width:280px!important;height:120px!important}.dialog-footer[data-v-a2431556]{width:100%;text-align:center}[data-v-a2431556] .el-textarea__inner{width:280px!important}.user-name[data-v-a2431556],.register[data-v-a2431556]{cursor:pointer}.functionalUnit[data-v-a2431556]{margin-left:20px;display:flex}.functionalUnit .el-button[data-v-a2431556]{width:84px;height:32px;border:none;font-weight:400;font-size:14px;border-radius:2px;color:#fff}.functionalUnit .el-button img[data-v-a2431556]{width:16px;height:16px;margin-right:8px}.functionalUnit .el-button[data-v-a2431556]:nth-child(1){background-color:#2192ba}.functionalUnit .el-button[data-v-a2431556]:nth-child(2){background-color:#17c85f}.TabularTitle[data-v-a2431556]{font-size:14px;color:#747272;font-weight:700;margin-bottom:10px}.pagination[data-v-a2431556]{width:100%;height:30px}.pagination[data-v-a2431556] .el-pagination{margin-top:9px!important}.addSlip .el-button[data-v-a2431556]{border:none;background-color:#07a;margin-top:8px;color:#fff}.addSlip[data-v-a2431556] .el-pagination{margin-top:8px!important}.ml-3[data-v-a2431556]{margin-left:20px}.upload-file-uploader[data-v-a2431556]{width:50%}.el-upload-list .el-upload-list__item[data-v-a2431556]{width:33%!important;float:left;margin-left:-385px;margin-top:25px}.el-upload-list .el-upload-list__item[data-v-a2431556] .horizontal-list ul .el-upload-list__item{width:33%!important;float:left;margin-top:25px}.el-upload-list .el-upload-list__item[data-v-a2431556] .el-link__inner{display:inline-flex;justify-content:center;align-items:center;width:200px}
|
|
@ -0,0 +1 @@
|
|||
@charset "UTF-8";.tag-list .el-tag[data-v-bf4a46ed]{background:#4555521a;color:#455552;margin-right:10px;cursor:pointer}.tag-list .el-tag.isActive[data-v-bf4a46ed]{background:#4555521a;color:#455552}.tag-list .el-tag.isActive[data-v-bf4a46ed] .el-icon{color:#455552}[data-v-bf4a46ed] .el-tag__close{color:#455552!important}[data-v-bf4a46ed] .el-tag__close:hover{background-color:transparent!important}.common-layout[data-v-0910c239]{width:100vw;height:100vh;overflow:hidden}.layout[data-v-0910c239]{width:100%;height:100%}.el-menu[data-v-0910c239]{border:none}.el-header[data-v-0910c239]{width:100%;height:60px;background-color:#fff;padding:0}.el-header .img[data-v-0910c239]{width:90px;height:55px;margin-top:5px;margin-left:10px;background:url(./海关logo-BEdWl9eU.ico) no-repeat;background-size:100% 100%}.ContainerConent[data-v-0910c239]{width:100%;height:calc(100% - 60px);background-color:#f6f9f8}.el-aside[data-v-0910c239]{width:200px;height:100%;background-color:#fff}.mainContent[data-v-0910c239]{width:100%;height:100%;display:block;padding:17px 20px}.Tool[data-v-0910c239],.Tool .el-tabs[data-v-0910c239]{width:100%;height:24px}.Tool[data-v-0910c239] .el-tabs__header{border:none!important}.Tool[data-v-0910c239] .el-tabs__item{width:88px;height:24px;background-color:#4555521a}.el-main[data-v-0910c239]{padding:0;height:calc(100% - 34px);width:100%;margin-top:16px;overflow:hidden}.el-menu-item.is-active[data-v-0910c239]{color:#0d867f}.iconfont[data-v-0910c239]{margin-right:16px}.Administrator[data-v-0910c239]{float:right;height:100%;display:flex;align-items:center;justify-content:center;margin-right:40px;cursor:pointer}[data-v-0910c239] .el-dropdown-link{border:none!important}[data-v-0910c239] .example-showcase .el-dropdown-link{cursor:pointer;color:var(--el-color-primary);display:flex;align-items:center}
|
|
@ -0,0 +1 @@
|
|||
import{g as e,p as a,u as r}from"./request-DbWxdC3O.js";const o=t=>a("/api/Login",t),n=t=>e("/api/GetStarterList",t),p=t=>e("/api/GetModelList",t),l=t=>e("/api/GetModelDetails",t),d=t=>a("/api/EditStarter",t),u=(t,i)=>r("/api/Upload"+t,i),c=t=>e("/api/DeleteFile",t),G=t=>a("/api/EditModel",t);export{c as D,G as E,p as G,o as a,u as b,l as c,n as d,d as e};
|
After Width: | Height: | Size: 70 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 234 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 22 KiB |
|
@ -0,0 +1,16 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="./vite.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>LKJCpowerSupplyOfficeSimulationSystem</title>
|
||||
<link rel="stylesheet" href="//at.alicdn.com/t/c/font_4490429_ym69s57vxr.css">
|
||||
|
||||
<script type="module" crossorigin src="./assets/index-DNLxjT0X.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="./assets/index-CocOxO6h.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
</body>
|
||||
</html>
|
After Width: | Height: | Size: 111 KiB |
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"liveServer.settings.port": 5501
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"companyName": "DefaultCompany",
|
||||
"productName": "FuZhou_FirstPage",
|
||||
"productVersion": "1.0",
|
||||
"dataUrl": "APP.data.unityweb",
|
||||
"wasmCodeUrl": "APP.wasm.code.unityweb",
|
||||
"wasmFrameworkUrl": "APP.wasm.framework.unityweb",
|
||||
"graphicsAPI": ["WebGL 2.0","WebGL 1.0"],
|
||||
"webglContextAttributes": {"preserveDrawingBuffer": false},
|
||||
"splashScreenStyle": "Dark",
|
||||
"backgroundColor": "#231F20",
|
||||
"cacheControl": {"default": "must-revalidate"},
|
||||
"developmentBuild": false,
|
||||
"multithreading": false,
|
||||
"unityVersion": "2019.4.9f1"
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
function UnityProgress(unityInstance, progress) {
|
||||
if (!unityInstance.Module)
|
||||
return;
|
||||
if (!unityInstance.logo) {
|
||||
unityInstance.logo = document.createElement("div");
|
||||
unityInstance.logo.className = "logo " + unityInstance.Module.splashScreenStyle;
|
||||
unityInstance.container.appendChild(unityInstance.logo);
|
||||
}
|
||||
if (!unityInstance.progress) {
|
||||
unityInstance.progress = document.createElement("div");
|
||||
unityInstance.progress.className = "progress " + unityInstance.Module.splashScreenStyle;
|
||||
unityInstance.progress.empty = document.createElement("div");
|
||||
unityInstance.progress.empty.className = "empty";
|
||||
unityInstance.progress.appendChild(unityInstance.progress.empty);
|
||||
unityInstance.progress.full = document.createElement("div");
|
||||
unityInstance.progress.full.className = "full";
|
||||
unityInstance.progress.appendChild(unityInstance.progress.full);
|
||||
unityInstance.container.appendChild(unityInstance.progress);
|
||||
}
|
||||
unityInstance.progress.full.style.width = (100 * progress) + "%";
|
||||
unityInstance.progress.empty.style.width = (100 * (1 - progress)) + "%";
|
||||
if (progress == 1)
|
||||
unityInstance.logo.style.display = unityInstance.progress.style.display = "none";
|
||||
}
|
After Width: | Height: | Size: 2.3 MiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 345 B |
After Width: | Height: | Size: 155 B |
After Width: | Height: | Size: 159 B |
After Width: | Height: | Size: 137 B |
After Width: | Height: | Size: 142 B |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 2.2 KiB |
|
@ -0,0 +1,40 @@
|
|||
function _registerEvent (target, eventType, cb) {
|
||||
if (target.addEventListener) {
|
||||
target.addEventListener(eventType, cb)
|
||||
return {
|
||||
remove: function () {
|
||||
target.removeEventListener(eventType, cb)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
target.attachEvent(eventType, cb)
|
||||
return {
|
||||
remove: function () {
|
||||
target.detachEvent(eventType, cb)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export function openUriWithTimeoutHack (uri, failCb, successCb) {
|
||||
const timeout = setTimeout(function () {
|
||||
failCb()
|
||||
handler.remove()
|
||||
}, 1500)
|
||||
|
||||
// handle page running in an iframe (blur must be registered with top level window)
|
||||
let target = window
|
||||
while (target != target.parent) {
|
||||
target = target.parent
|
||||
}
|
||||
|
||||
var handler = _registerEvent(target, 'blur', onBlur)
|
||||
|
||||
function onBlur () {
|
||||
clearTimeout(timeout)
|
||||
handler.remove()
|
||||
successCb()
|
||||
}
|
||||
|
||||
window.location = uri
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
body {
|
||||
overflow: hidden;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.webgl-content * {border: 0; margin: 0; padding: 0 ;background: url('bg.jpg');}
|
||||
.webgl-content {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
|
||||
|
||||
.webgl-content .logo, .progress {position: absolute; left: 50%; top: 30%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
|
||||
/* .webgl-content .logo {background: url('progressLogo.Light.png') no-repeat center / contain; width: 154px; height: 130px;} */
|
||||
.webgl-content .progress {height: 18px; width: 141px; margin-top: 90px;}
|
||||
.webgl-content .progress .empty {background: url('progressEmpty.Light.png') no-repeat right / cover; float: right; width: 100%; height: 100%; display: inline-block;}
|
||||
.webgl-content .progress .full {background: url('progressFull.Light.png') no-repeat left / cover; float: left; width: 0%; height: 100%; display: inline-block;}
|
||||
|
||||
.webgl-content .logo.Dark {background-image: url('progressLogo.Dark.png');}
|
||||
.webgl-content .progress.Dark .empty {background-image: url('progressEmpty.Dark.png');}
|
||||
.webgl-content .progress.Dark .full {background-image: url('progressFull.Dark.png');}
|
||||
|
||||
.webgl-content .footer {margin-top: 5px; height: 38px; line-height: 38px; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 18px;}
|
||||
.webgl-content .footer .webgl-logo, .title, .fullscreen {height: 100%; display: inline-block; background: transparent center no-repeat;}
|
||||
.webgl-content .footer .webgl-logo {background-image: url('webgl-logo.png'); width: 204px; float: left;}
|
||||
.webgl-content .footer .title {margin-right: 10px; float: right;}
|
||||
.webgl-content .footer .fullscreen {background-image: url('fullscreen.png'); width: 38px; float: right;}
|
||||
|
After Width: | Height: | Size: 3.5 KiB |
|
@ -0,0 +1,96 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en-us">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>Unity WebGL Player | FuZhou_FirstPage</title>
|
||||
<link rel="shortcut icon" href="TemplateData/favicon.ico">
|
||||
<link rel="stylesheet" href="TemplateData/style.css">
|
||||
<script src="TemplateData/UnityProgress.js"></script>
|
||||
<script src="Build/UnityLoader.js"></script>
|
||||
<!-- <script type="module" src="./TemplateData/protocolcheck.js"></script> -->
|
||||
<!-- <script type="module" >
|
||||
import { openUriWithTimeoutHack } from './TemplateData/protocolcheck.js'
|
||||
|
||||
window.openUriWithTimeoutHack = openUriWithTimeoutHack;
|
||||
</script> -->
|
||||
|
||||
<script >
|
||||
var unityInstance = UnityLoader.instantiate("unityContainer", "Build/APP.json", {onProgress: UnityProgress});
|
||||
function OnWake(){
|
||||
const href = window.location.href
|
||||
const regex = /^https?:\/\/([^/:]+):?(\d+)?/i
|
||||
const match = href.match(regex)
|
||||
console.log('match', match)
|
||||
// const dialogImageUrl = match[1]
|
||||
const dialogImageUrl = '172.16.1.253'
|
||||
unityInstance.SendMessage('FirstPanel','InitUnity',dialogImageUrl)
|
||||
}
|
||||
function StartModel(data){
|
||||
console.log("data",data)
|
||||
|
||||
window.parent.blur(JSON.parse(data));
|
||||
// blur(data)
|
||||
}
|
||||
// document.getElementsByTagName("a")[0].getAttribute("target")
|
||||
function blur(data) {
|
||||
console.log('cscs', data)
|
||||
const href = window.location.href
|
||||
const regex = /^https?:\/\/([^/:]+):?(\d+)?/i
|
||||
const match = href.match(regex)
|
||||
console.log('match', match)
|
||||
// const dialogImageUrl = match[0]
|
||||
// const dialogImageUrl2 = match[1]
|
||||
const dialogImageUrl = 'http://172.16.1.253:4000'
|
||||
const dialogImageUrl2 = '172.16.1.253'
|
||||
const ModelResourcesE = encodeURIComponent(dialogImageUrl + data.ModelResources)
|
||||
console.log('ModelResourcesE', ModelResourcesE)
|
||||
openUriWithTimeoutHack(
|
||||
'starter://' + `;${ModelResourcesE};${data.ModelResourcesPath};${data.RegistryName};${data.MONITOR_ID};${data.VersionNumber};${data.CUSTOMS_CODE};${data.ModelName};${data.TrainingSize};${dialogImageUrl2};`,
|
||||
() => {
|
||||
console.log('111' )
|
||||
ElMessageBox.confirm('启动器未安装,启动应用前需要先安装启动器,现在去下载吗?', '提示', {
|
||||
confirmButtonText: '下载',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
.then(() => {
|
||||
// debugger
|
||||
// 打开启动器下载路径
|
||||
GetLastVersion().then((res) => {
|
||||
console.log('res', res)
|
||||
window.open(dialogImageUrl + res.data.LauncherResources)
|
||||
}).catch(() => {
|
||||
// exitApp(startParams.trainingId)
|
||||
ElMessage.error('获取启动器下载路径失败')
|
||||
})
|
||||
})
|
||||
.catch(() => {
|
||||
// exitApp(startParams.trainingId)
|
||||
console.log('取消下载')
|
||||
})
|
||||
},
|
||||
() => {
|
||||
console.log('已安装,自动唤起')
|
||||
}
|
||||
) // 调用export的方法
|
||||
//
|
||||
}
|
||||
// 启动启动器
|
||||
|
||||
</script>
|
||||
<script type="module">
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="webgl-content" style="height: 100%;width: 100%;" >
|
||||
<div id="unityContainer" style="height: 100%;width: 100%;" ></div>
|
||||
<!-- <div class="footer">
|
||||
<div class="webgl-logo"></div>
|
||||
<div class="fullscreen" onclick="unityInstance.SetFullscreen(1)"></div>
|
||||
<div class="title">FuZhou_FirstPage</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -16,7 +16,7 @@ export const GetModelList = (params) => {
|
|||
export const GetModelDetails = (params) => {
|
||||
return get('/api/GetModelDetails', params)
|
||||
}
|
||||
|
||||
//
|
||||
// 新增成绩管理列表
|
||||
export const AddExam = (params) => {
|
||||
return post('/api/AddExam', params)
|
||||
|
@ -25,7 +25,18 @@ export const AddExam = (params) => {
|
|||
export const EditExamList = (params) => {
|
||||
return post('/api/EditExam', params)
|
||||
}
|
||||
|
||||
// 编辑启动器
|
||||
export const EditStarter = (params) => {
|
||||
return post('/api/EditStarter', params)
|
||||
}
|
||||
// 上传文件接口
|
||||
export const apiUploadList = (url, params) => {
|
||||
return uploadFile('/api/Upload' + url, params)
|
||||
}
|
||||
// 删除文件
|
||||
export const DeleteFile = (params) => {
|
||||
return get('/api/DeleteFile', params)
|
||||
}
|
||||
// 编辑器树结构
|
||||
export const GetFaultTree = (params) => {
|
||||
return get('/api/GetFaultTree', params)
|
||||
|
@ -92,9 +103,9 @@ export const GetPlatformArea = (params) => {
|
|||
export const GetLine = (params) => {
|
||||
return get('/api/GetLine', params)
|
||||
}
|
||||
|
||||
export const EditExam = (params) => {
|
||||
return post('/api/EditExam', params)
|
||||
// 编辑模型
|
||||
export const EditModel = (params) => {
|
||||
return post('/api/EditModel', params)
|
||||
}
|
||||
export const GetExamDetails = (params) => {
|
||||
return get('/api/GetExamDetails', params)
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
import { get, post, download, uploadFile } from './request'
|
||||
|
||||
// 获取福州海关所有监管企
|
||||
export const getCorporation = (params) => {
|
||||
return get('/api/Corporation/GetNum', params)
|
||||
}
|
||||
|
||||
// 获取堆场总数
|
||||
export const getAllInfo = (params) => {
|
||||
return get('/api/Yard/GetAllInfo', params)
|
||||
}
|
||||
|
||||
// 获取年度进口总量
|
||||
export const getStorage = (params) => {
|
||||
return get('/api/Storage/GetInNumWithCurrent', params)
|
||||
}
|
||||
|
||||
// 获取年度进口总量
|
||||
export const GetInNumYear = (params) => {
|
||||
return get('/api/Storage/GetInNumByYear', params)
|
||||
}
|
||||
|
||||
// 获取全年累计进出口传播艘次
|
||||
export const GetByYear = (params) => {
|
||||
return get('/api/Storage/GetBoCiByYear', params)
|
||||
}
|
||||
// 获取全年累计进出口传播艘次
|
||||
export const GetLastVersion = (params) => {
|
||||
return get('/api/GetLastVersion', params)
|
||||
}
|
||||
// export const apiUpload = (url, params) => {
|
||||
// return uploadFile('/api/ImportExam', params)
|
||||
// }
|
||||
// 获取左侧进出口商品种类总数
|
||||
export const GetGoodNumByYear = (params) => {
|
||||
return get('api/Storage/GetGoodNumByYear', params)
|
||||
}
|
||||
// 在库总量
|
||||
export const GetLastNum = (params) => {
|
||||
return get('api/Storage/GetLastNum', params)
|
||||
}
|
|
@ -1,333 +1,333 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>iconfont Demo</title>
|
||||
<link rel="shortcut icon" href="//img.alicdn.com/imgextra/i4/O1CN01Z5paLz1O0zuCC7osS_!!6000000001644-55-tps-83-82.svg" type="image/x-icon"/>
|
||||
<link rel="icon" type="image/svg+xml" href="//img.alicdn.com/imgextra/i4/O1CN01Z5paLz1O0zuCC7osS_!!6000000001644-55-tps-83-82.svg"/>
|
||||
<link rel="stylesheet" href="https://g.alicdn.com/thx/cube/1.3.2/cube.min.css">
|
||||
<link rel="stylesheet" href="demo.css">
|
||||
<link rel="stylesheet" href="iconfont.css">
|
||||
<script src="iconfont.js"></script>
|
||||
<!-- jQuery -->
|
||||
<script src="https://a1.alicdn.com/oss/uploads/2018/12/26/7bfddb60-08e8-11e9-9b04-53e73bb6408b.js"></script>
|
||||
<!-- 代码高亮 -->
|
||||
<script src="https://a1.alicdn.com/oss/uploads/2018/12/26/a3f714d0-08e6-11e9-8a15-ebf944d7534c.js"></script>
|
||||
<style>
|
||||
.main .logo {
|
||||
margin-top: 0;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.main .logo a {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.main .logo .sub-title {
|
||||
margin-left: 0.5em;
|
||||
font-size: 22px;
|
||||
color: #fff;
|
||||
background: linear-gradient(-45deg, #3967FF, #B500FE);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="main">
|
||||
<h1 class="logo"><a href="https://www.iconfont.cn/" title="iconfont 首页" target="_blank">
|
||||
<img width="200" src="https://img.alicdn.com/imgextra/i3/O1CN01Mn65HV1FfSEzR6DKv_!!6000000000514-55-tps-228-59.svg">
|
||||
|
||||
</a></h1>
|
||||
<div class="nav-tabs">
|
||||
<ul id="tabs" class="dib-box">
|
||||
<li class="dib active"><span>Unicode</span></li>
|
||||
<li class="dib"><span>Font class</span></li>
|
||||
<li class="dib"><span>Symbol</span></li>
|
||||
</ul>
|
||||
|
||||
<a href="https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=4490429" target="_blank" class="nav-more">查看项目</a>
|
||||
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<div class="content unicode" style="display: block;">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">分析管理</div>
|
||||
<div class="code-name">&#xe61d;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">实训管理</div>
|
||||
<div class="code-name">&#xe6d2;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">学习管理</div>
|
||||
<div class="code-name">&#xe821;</div>
|
||||
</li>
|
||||
|
||||
<!-- 新增客户端管理 -->
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">客户端管理</div>
|
||||
<div class="code-name">&#xe821;</div>
|
||||
</li>
|
||||
<!-- 新增客户端管理 end-->
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">grade</div>
|
||||
<div class="code-name">&#xe601;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">exam</div>
|
||||
<div class="code-name">&#xe602;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">system</div>
|
||||
<div class="code-name">&#xe603;</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="article markdown">
|
||||
<h2 id="unicode-">Unicode 引用</h2>
|
||||
<hr>
|
||||
|
||||
<p>Unicode 是字体在网页端最原始的应用方式,特点是:</p>
|
||||
<ul>
|
||||
<li>支持按字体的方式去动态调整图标大小,颜色等等。</li>
|
||||
<li>默认情况下不支持多色,直接添加多色图标会自动去色。</li>
|
||||
</ul>
|
||||
<blockquote>
|
||||
<p>注意:新版 iconfont 支持两种方式引用多色图标:SVG symbol 引用方式和彩色字体图标模式。(使用彩色字体图标需要在「编辑项目」中开启「彩色」选项后并重新生成。)</p>
|
||||
</blockquote>
|
||||
<p>Unicode 使用步骤如下:</p>
|
||||
<h3 id="-font-face">第一步:拷贝项目下面生成的 <code>@font-face</code></h3>
|
||||
<pre><code class="language-css"
|
||||
>@font-face {
|
||||
font-family: 'iconfont';
|
||||
src: url('iconfont.woff2?t=1716193171193') format('woff2'),
|
||||
url('iconfont.woff?t=1716193171193') format('woff'),
|
||||
url('iconfont.ttf?t=1716193171193') format('truetype');
|
||||
}
|
||||
</code></pre>
|
||||
<h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
|
||||
<pre><code class="language-css"
|
||||
>.iconfont {
|
||||
font-family: "iconfont" !important;
|
||||
font-size: 16px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
</code></pre>
|
||||
<h3 id="-">第三步:挑选相应图标并获取字体编码,应用于页面</h3>
|
||||
<pre>
|
||||
<code class="language-html"
|
||||
><span class="iconfont">&#x33;</span>
|
||||
</code></pre>
|
||||
<blockquote>
|
||||
<p>"iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content font-class">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-fenxiguanli"></span>
|
||||
<div class="name">
|
||||
分析管理
|
||||
</div>
|
||||
<div class="code-name">.icon-fenxiguanli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-shixunguanli"></span>
|
||||
<div class="name">
|
||||
实训管理
|
||||
</div>
|
||||
<div class="code-name">.icon-shixunguanli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xuexiguanli"></span>
|
||||
<div class="name">
|
||||
学习管理
|
||||
</div>
|
||||
<div class="code-name">.icon-xuexiguanli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-chengji"></span>
|
||||
<div class="name">
|
||||
grade
|
||||
</div>
|
||||
<div class="code-name">.icon-chengji
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-kaoshi"></span>
|
||||
<div class="name">
|
||||
exam
|
||||
</div>
|
||||
<div class="code-name">.icon-kaoshi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xitong"></span>
|
||||
<div class="name">
|
||||
system
|
||||
</div>
|
||||
<div class="code-name">.icon-xitong
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="article markdown">
|
||||
<h2 id="font-class-">font-class 引用</h2>
|
||||
<hr>
|
||||
|
||||
<p>font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。</p>
|
||||
<p>与 Unicode 使用方式相比,具有如下特点:</p>
|
||||
<ul>
|
||||
<li>相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。</li>
|
||||
<li>因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。</li>
|
||||
</ul>
|
||||
<p>使用步骤如下:</p>
|
||||
<h3 id="-fontclass-">第一步:引入项目下面生成的 fontclass 代码:</h3>
|
||||
<pre><code class="language-html"><link rel="stylesheet" href="./iconfont.css">
|
||||
</code></pre>
|
||||
<h3 id="-">第二步:挑选相应图标并获取类名,应用于页面:</h3>
|
||||
<pre><code class="language-html"><span class="iconfont icon-xxx"></span>
|
||||
</code></pre>
|
||||
<blockquote>
|
||||
<p>"
|
||||
iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content symbol">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-fenxiguanli"></use>
|
||||
</svg>
|
||||
<div class="name">分析管理</div>
|
||||
<div class="code-name">#icon-fenxiguanli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-shixunguanli"></use>
|
||||
</svg>
|
||||
<div class="name">实训管理</div>
|
||||
<div class="code-name">#icon-shixunguanli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xuexiguanli"></use>
|
||||
</svg>
|
||||
<div class="name">学习管理</div>
|
||||
<div class="code-name">#icon-xuexiguanli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-chengji"></use>
|
||||
</svg>
|
||||
<div class="name">grade</div>
|
||||
<div class="code-name">#icon-chengji</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-kaoshi"></use>
|
||||
</svg>
|
||||
<div class="name">exam</div>
|
||||
<div class="code-name">#icon-kaoshi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xitong"></use>
|
||||
</svg>
|
||||
<div class="name">system</div>
|
||||
<div class="code-name">#icon-xitong</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="article markdown">
|
||||
<h2 id="symbol-">Symbol 引用</h2>
|
||||
<hr>
|
||||
|
||||
<p>这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇<a href="">文章</a>
|
||||
这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:</p>
|
||||
<ul>
|
||||
<li>支持多色图标了,不再受单色限制。</li>
|
||||
<li>通过一些技巧,支持像字体那样,通过 <code>font-size</code>, <code>color</code> 来调整样式。</li>
|
||||
<li>兼容性较差,支持 IE9+,及现代浏览器。</li>
|
||||
<li>浏览器渲染 SVG 的性能一般,还不如 png。</li>
|
||||
</ul>
|
||||
<p>使用步骤如下:</p>
|
||||
<h3 id="-symbol-">第一步:引入项目下面生成的 symbol 代码:</h3>
|
||||
<pre><code class="language-html"><script src="./iconfont.js"></script>
|
||||
</code></pre>
|
||||
<h3 id="-css-">第二步:加入通用 CSS 代码(引入一次就行):</h3>
|
||||
<pre><code class="language-html"><style>
|
||||
.icon {
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
vertical-align: -0.15em;
|
||||
fill: currentColor;
|
||||
overflow: hidden;
|
||||
}
|
||||
</style>
|
||||
</code></pre>
|
||||
<h3 id="-">第三步:挑选相应图标并获取类名,应用于页面:</h3>
|
||||
<pre><code class="language-html"><svg class="icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xxx"></use>
|
||||
</svg>
|
||||
</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
$(document).ready(function () {
|
||||
$('.tab-container .content:first').show()
|
||||
|
||||
$('#tabs li').click(function (e) {
|
||||
var tabContent = $('.tab-container .content')
|
||||
var index = $(this).index()
|
||||
|
||||
if ($(this).hasClass('active')) {
|
||||
return
|
||||
} else {
|
||||
$('#tabs li').removeClass('active')
|
||||
$(this).addClass('active')
|
||||
|
||||
tabContent.hide().eq(index).fadeIn()
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>iconfont Demo</title>
|
||||
<link rel="shortcut icon" href="//img.alicdn.com/imgextra/i4/O1CN01Z5paLz1O0zuCC7osS_!!6000000001644-55-tps-83-82.svg" type="image/x-icon"/>
|
||||
<link rel="icon" type="image/svg+xml" href="//img.alicdn.com/imgextra/i4/O1CN01Z5paLz1O0zuCC7osS_!!6000000001644-55-tps-83-82.svg"/>
|
||||
<link rel="stylesheet" href="https://g.alicdn.com/thx/cube/1.3.2/cube.min.css">
|
||||
<link rel="stylesheet" href="demo.css">
|
||||
<link rel="stylesheet" href="iconfont.css">
|
||||
<script src="iconfont.js"></script>
|
||||
<!-- jQuery -->
|
||||
<script src="https://a1.alicdn.com/oss/uploads/2018/12/26/7bfddb60-08e8-11e9-9b04-53e73bb6408b.js"></script>
|
||||
<!-- 代码高亮 -->
|
||||
<script src="https://a1.alicdn.com/oss/uploads/2018/12/26/a3f714d0-08e6-11e9-8a15-ebf944d7534c.js"></script>
|
||||
<style>
|
||||
.main .logo {
|
||||
margin-top: 0;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.main .logo a {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.main .logo .sub-title {
|
||||
margin-left: 0.5em;
|
||||
font-size: 22px;
|
||||
color: #fff;
|
||||
background: linear-gradient(-45deg, #3967FF, #B500FE);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="main">
|
||||
<h1 class="logo"><a href="https://www.iconfont.cn/" title="iconfont 首页" target="_blank">
|
||||
<img width="200" src="https://img.alicdn.com/imgextra/i3/O1CN01Mn65HV1FfSEzR6DKv_!!6000000000514-55-tps-228-59.svg">
|
||||
|
||||
</a></h1>
|
||||
<div class="nav-tabs">
|
||||
<ul id="tabs" class="dib-box">
|
||||
<li class="dib active"><span>Unicode</span></li>
|
||||
<li class="dib"><span>Font class</span></li>
|
||||
<li class="dib"><span>Symbol</span></li>
|
||||
</ul>
|
||||
|
||||
<a href="https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=4490429" target="_blank" class="nav-more">查看项目</a>
|
||||
|
||||
</div>
|
||||
<div class="tab-container">
|
||||
<div class="content unicode" style="display: block;">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">分析管理</div>
|
||||
<div class="code-name">&#xe61d;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">实训管理</div>
|
||||
<div class="code-name">&#xe6d2;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">学习管理</div>
|
||||
<div class="code-name">&#xe821;</div>
|
||||
</li>
|
||||
|
||||
<!-- 新增客户端管理 -->
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">客户端管理</div>
|
||||
<div class="code-name">&#xe821;</div>
|
||||
</li>
|
||||
<!-- 新增客户端管理 end-->
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">grade</div>
|
||||
<div class="code-name">&#xe601;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">exam</div>
|
||||
<div class="code-name">&#xe602;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">system</div>
|
||||
<div class="code-name">&#xe603;</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="article markdown">
|
||||
<h2 id="unicode-">Unicode 引用</h2>
|
||||
<hr>
|
||||
|
||||
<p>Unicode 是字体在网页端最原始的应用方式,特点是:</p>
|
||||
<ul>
|
||||
<li>支持按字体的方式去动态调整图标大小,颜色等等。</li>
|
||||
<li>默认情况下不支持多色,直接添加多色图标会自动去色。</li>
|
||||
</ul>
|
||||
<blockquote>
|
||||
<p>注意:新版 iconfont 支持两种方式引用多色图标:SVG symbol 引用方式和彩色字体图标模式。(使用彩色字体图标需要在「编辑项目」中开启「彩色」选项后并重新生成。)</p>
|
||||
</blockquote>
|
||||
<p>Unicode 使用步骤如下:</p>
|
||||
<h3 id="-font-face">第一步:拷贝项目下面生成的 <code>@font-face</code></h3>
|
||||
<pre><code class="language-css"
|
||||
>@font-face {
|
||||
font-family: 'iconfont';
|
||||
src: url('iconfont.woff2?t=1716193171193') format('woff2'),
|
||||
url('iconfont.woff?t=1716193171193') format('woff'),
|
||||
url('iconfont.ttf?t=1716193171193') format('truetype');
|
||||
}
|
||||
</code></pre>
|
||||
<h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
|
||||
<pre><code class="language-css"
|
||||
>.iconfont {
|
||||
font-family: "iconfont" !important;
|
||||
font-size: 16px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
</code></pre>
|
||||
<h3 id="-">第三步:挑选相应图标并获取字体编码,应用于页面</h3>
|
||||
<pre>
|
||||
<code class="language-html"
|
||||
><span class="iconfont">&#x33;</span>
|
||||
</code></pre>
|
||||
<blockquote>
|
||||
<p>"iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content font-class">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-fenxiguanli"></span>
|
||||
<div class="name">
|
||||
分析管理
|
||||
</div>
|
||||
<div class="code-name">.icon-fenxiguanli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-shixunguanli"></span>
|
||||
<div class="name">
|
||||
实训管理
|
||||
</div>
|
||||
<div class="code-name">.icon-shixunguanli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xuexiguanli"></span>
|
||||
<div class="name">
|
||||
学习管理
|
||||
</div>
|
||||
<div class="code-name">.icon-xuexiguanli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-chengji"></span>
|
||||
<div class="name">
|
||||
grade
|
||||
</div>
|
||||
<div class="code-name">.icon-chengji
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-kaoshi"></span>
|
||||
<div class="name">
|
||||
exam
|
||||
</div>
|
||||
<div class="code-name">.icon-kaoshi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xitong"></span>
|
||||
<div class="name">
|
||||
system
|
||||
</div>
|
||||
<div class="code-name">.icon-xitong
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="article markdown">
|
||||
<h2 id="font-class-">font-class 引用</h2>
|
||||
<hr>
|
||||
|
||||
<p>font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。</p>
|
||||
<p>与 Unicode 使用方式相比,具有如下特点:</p>
|
||||
<ul>
|
||||
<li>相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。</li>
|
||||
<li>因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。</li>
|
||||
</ul>
|
||||
<p>使用步骤如下:</p>
|
||||
<h3 id="-fontclass-">第一步:引入项目下面生成的 fontclass 代码:</h3>
|
||||
<pre><code class="language-html"><link rel="stylesheet" href="./iconfont.css">
|
||||
</code></pre>
|
||||
<h3 id="-">第二步:挑选相应图标并获取类名,应用于页面:</h3>
|
||||
<pre><code class="language-html"><span class="iconfont icon-xxx"></span>
|
||||
</code></pre>
|
||||
<blockquote>
|
||||
<p>"
|
||||
iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content symbol">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-fenxiguanli"></use>
|
||||
</svg>
|
||||
<div class="name">分析管理</div>
|
||||
<div class="code-name">#icon-fenxiguanli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-shixunguanli"></use>
|
||||
</svg>
|
||||
<div class="name">实训管理</div>
|
||||
<div class="code-name">#icon-shixunguanli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xuexiguanli"></use>
|
||||
</svg>
|
||||
<div class="name">学习管理</div>
|
||||
<div class="code-name">#icon-xuexiguanli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-chengji"></use>
|
||||
</svg>
|
||||
<div class="name">grade</div>
|
||||
<div class="code-name">#icon-chengji</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-kaoshi"></use>
|
||||
</svg>
|
||||
<div class="name">exam</div>
|
||||
<div class="code-name">#icon-kaoshi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xitong"></use>
|
||||
</svg>
|
||||
<div class="name">system</div>
|
||||
<div class="code-name">#icon-xitong</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="article markdown">
|
||||
<h2 id="symbol-">Symbol 引用</h2>
|
||||
<hr>
|
||||
|
||||
<p>这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇<a href="">文章</a>
|
||||
这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:</p>
|
||||
<ul>
|
||||
<li>支持多色图标了,不再受单色限制。</li>
|
||||
<li>通过一些技巧,支持像字体那样,通过 <code>font-size</code>, <code>color</code> 来调整样式。</li>
|
||||
<li>兼容性较差,支持 IE9+,及现代浏览器。</li>
|
||||
<li>浏览器渲染 SVG 的性能一般,还不如 png。</li>
|
||||
</ul>
|
||||
<p>使用步骤如下:</p>
|
||||
<h3 id="-symbol-">第一步:引入项目下面生成的 symbol 代码:</h3>
|
||||
<pre><code class="language-html"><script src="./iconfont.js"></script>
|
||||
</code></pre>
|
||||
<h3 id="-css-">第二步:加入通用 CSS 代码(引入一次就行):</h3>
|
||||
<pre><code class="language-html"><style>
|
||||
.icon {
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
vertical-align: -0.15em;
|
||||
fill: currentColor;
|
||||
overflow: hidden;
|
||||
}
|
||||
</style>
|
||||
</code></pre>
|
||||
<h3 id="-">第三步:挑选相应图标并获取类名,应用于页面:</h3>
|
||||
<pre><code class="language-html"><svg class="icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xxx"></use>
|
||||
</svg>
|
||||
</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
$(document).ready(function () {
|
||||
$('.tab-container .content:first').show()
|
||||
|
||||
$('#tabs li').click(function (e) {
|
||||
var tabContent = $('.tab-container .content')
|
||||
var index = $(this).index()
|
||||
|
||||
if ($(this).hasClass('active')) {
|
||||
return
|
||||
} else {
|
||||
$('#tabs li').removeClass('active')
|
||||
$(this).addClass('active')
|
||||
|
||||
tabContent.hide().eq(index).fadeIn()
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,39 +1,39 @@
|
|||
@font-face {
|
||||
font-family: "iconfont"; /* Project id 4490429 */
|
||||
src: url('iconfont.woff2?t=1716193171193') format('woff2'),
|
||||
url('iconfont.woff?t=1716193171193') format('woff'),
|
||||
url('iconfont.ttf?t=1716193171193') format('truetype');
|
||||
}
|
||||
|
||||
.iconfont {
|
||||
font-family: "iconfont" !important;
|
||||
font-size: 16px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.icon-fenxiguanli:before {
|
||||
content: "\e61d";
|
||||
}
|
||||
|
||||
.icon-shixunguanli:before {
|
||||
content: "\e6d2";
|
||||
}
|
||||
|
||||
.icon-xuexiguanli:before {
|
||||
content: "\e821";
|
||||
}
|
||||
|
||||
.icon-chengji:before {
|
||||
content: "\e601";
|
||||
}
|
||||
|
||||
.icon-kaoshi:before {
|
||||
content: "\e602";
|
||||
}
|
||||
|
||||
.icon-xitong:before {
|
||||
content: "\e603";
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: "iconfont"; /* Project id 4490429 */
|
||||
src: url('iconfont.woff2?t=1716193171193') format('woff2'),
|
||||
url('iconfont.woff?t=1716193171193') format('woff'),
|
||||
url('iconfont.ttf?t=1716193171193') format('truetype');
|
||||
}
|
||||
|
||||
.iconfont {
|
||||
font-family: "iconfont" !important;
|
||||
font-size: 16px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.icon-fenxiguanli:before {
|
||||
content: "\e61d";
|
||||
}
|
||||
|
||||
.icon-shixunguanli:before {
|
||||
content: "\e6d2";
|
||||
}
|
||||
|
||||
.icon-xuexiguanli:before {
|
||||
content: "\e821";
|
||||
}
|
||||
|
||||
.icon-chengji:before {
|
||||
content: "\e601";
|
||||
}
|
||||
|
||||
.icon-kaoshi:before {
|
||||
content: "\e602";
|
||||
}
|
||||
|
||||
.icon-xitong:before {
|
||||
content: "\e603";
|
||||
}
|
||||
|
||||
|
|
|
@ -1,60 +1,60 @@
|
|||
{
|
||||
"id": "4490429",
|
||||
"name": "LKJC",
|
||||
"font_family": "iconfont",
|
||||
"css_prefix_text": "icon-",
|
||||
"description": "",
|
||||
"glyphs": [
|
||||
{
|
||||
"icon_id": "9096254",
|
||||
"name": "分析管理",
|
||||
"font_class": "fenxiguanli",
|
||||
"unicode": "e61d",
|
||||
"unicode_decimal": 58909
|
||||
},
|
||||
{
|
||||
"icon_id": "11101584",
|
||||
"name": "实训管理",
|
||||
"font_class": "shixunguanli",
|
||||
"unicode": "e6d2",
|
||||
"unicode_decimal": 59090
|
||||
},
|
||||
{
|
||||
"icon_id": "36656926",
|
||||
"name": "学习管理",
|
||||
"font_class": "xuexiguanli",
|
||||
"unicode": "e821",
|
||||
"unicode_decimal": 59425
|
||||
},
|
||||
// 新增客户端管理
|
||||
{
|
||||
"icon_id": "36656927",
|
||||
"name": "客户端管理",
|
||||
"font_class": "kehuduanguanli",
|
||||
"unicode": "e821",
|
||||
"unicode_decimal": 59427
|
||||
},
|
||||
// 新增客户端管理end
|
||||
{
|
||||
"icon_id": "39758479",
|
||||
"name": "grade",
|
||||
"font_class": "chengji",
|
||||
"unicode": "e601",
|
||||
"unicode_decimal": 58881
|
||||
},
|
||||
{
|
||||
"icon_id": "39758508",
|
||||
"name": "exam",
|
||||
"font_class": "kaoshi",
|
||||
"unicode": "e602",
|
||||
"unicode_decimal": 58882
|
||||
},
|
||||
{
|
||||
"icon_id": "39758529",
|
||||
"name": "system",
|
||||
"font_class": "xitong",
|
||||
"unicode": "e603",
|
||||
"unicode_decimal": 58883
|
||||
}
|
||||
]
|
||||
}
|
||||
{
|
||||
"id": "4490429",
|
||||
"name": "LKJC",
|
||||
"font_family": "iconfont",
|
||||
"css_prefix_text": "icon-",
|
||||
"description": "",
|
||||
"glyphs": [
|
||||
{
|
||||
"icon_id": "9096254",
|
||||
"name": "分析管理",
|
||||
"font_class": "fenxiguanli",
|
||||
"unicode": "e61d",
|
||||
"unicode_decimal": 58909
|
||||
},
|
||||
{
|
||||
"icon_id": "11101584",
|
||||
"name": "实训管理",
|
||||
"font_class": "shixunguanli",
|
||||
"unicode": "e6d2",
|
||||
"unicode_decimal": 59090
|
||||
},
|
||||
{
|
||||
"icon_id": "36656926",
|
||||
"name": "学习管理",
|
||||
"font_class": "xuexiguanli",
|
||||
"unicode": "e821",
|
||||
"unicode_decimal": 59425
|
||||
},
|
||||
// 新增客户端管理
|
||||
{
|
||||
"icon_id": "36656927",
|
||||
"name": "客户端管理",
|
||||
"font_class": "kehuduanguanli",
|
||||
"unicode": "e821",
|
||||
"unicode_decimal": 59427
|
||||
},
|
||||
// 新增客户端管理end
|
||||
{
|
||||
"icon_id": "39758479",
|
||||
"name": "grade",
|
||||
"font_class": "chengji",
|
||||
"unicode": "e601",
|
||||
"unicode_decimal": 58881
|
||||
},
|
||||
{
|
||||
"icon_id": "39758508",
|
||||
"name": "exam",
|
||||
"font_class": "kaoshi",
|
||||
"unicode": "e602",
|
||||
"unicode_decimal": 58882
|
||||
},
|
||||
{
|
||||
"icon_id": "39758529",
|
||||
"name": "system",
|
||||
"font_class": "xitong",
|
||||
"unicode": "e603",
|
||||
"unicode_decimal": 58883
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -1,12 +1,27 @@
|
|||
@font-face {
|
||||
font-family: 'Microsoft-YaHei';
|
||||
src: url('./msyh.ttc') format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'D-DIN-Bold';
|
||||
src: url('./D-DIN-Bold.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'DouyinSansBold';
|
||||
src: url('./DouyinSansBold.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Microsoft-YaHei';
|
||||
src: url('./msyh.ttc') format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'D-DIN-Bold';
|
||||
src: url('./D-DIN-Bold.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'DouyinSansBold';
|
||||
src: url('./DouyinSansBold.otf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: '思源黑体 CN Heavy';
|
||||
src: url('./SourceHanSansCN-Heavy.ttf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: '思源黑体 CN Regular';
|
||||
src: url('./SourceHanSansCN-Regular.ttf') format('opentype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: '优设标题黑';
|
||||
src: url('./优设标题黑.ttf') format('opentype');
|
||||
}
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 160 KiB |
After Width: | Height: | Size: 140 KiB |
After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 62 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 63 KiB |
After Width: | Height: | Size: 957 B |
After Width: | Height: | Size: 2.1 KiB |