login.html 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <link href="css/bootstrap.min.css" rel="stylesheet">
  7. <link rel="stylesheet" type="text/css" href="blog/css/font-awesome.css">
  8. <title>班尼戈-德国班尼戈阀门【官网】</title>
  9. <link rel="icon" href="./favicon.ico" type="image/x-icon">
  10. <link rel="shortcut icon" href="./favicon.ico" type="image/x-icon">
  11. </head>
  12. <style>
  13. *{
  14. margin: 0;
  15. padding: 0;
  16. }
  17. .container{
  18. display: flex;
  19. align-items: center;
  20. justify-content: center;
  21. height: 100vh;
  22. width:100% ;
  23. background-image: url('./assets/loginbg.jpg');
  24. background-size: cover;
  25. }
  26. /* From Uiverse.io by micaelgomestavares */
  27. .form {
  28. display: flex;
  29. flex-direction: column;
  30. gap: 10px;
  31. background-color: #ffffff;
  32. padding: 30px;
  33. width: 390px;
  34. border-radius: 20px;
  35. border: 1px solid #f1f2f3;
  36. font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  37. box-shadow: 0px 3px 6px 1px rgba(0,0,0,0.16);
  38. }
  39. ::placeholder {
  40. font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  41. }
  42. .form button {
  43. align-self: flex-end;
  44. }
  45. .flex-column > label {
  46. color: #151717;
  47. font-weight: 600;
  48. }
  49. label{
  50. margin: 0;
  51. }
  52. .inputForm {
  53. position: relative;
  54. border: 1.5px solid #ecedec;
  55. border-radius: 10px;
  56. height: 50px;
  57. display: flex;
  58. align-items: center;
  59. transition: 0.2s ease-in-out;
  60. margin-bottom: 10px;
  61. }
  62. .input {
  63. border-radius: 10px;
  64. border: none;
  65. width: 100%;
  66. height: 100%;
  67. padding: 0 10px;
  68. }
  69. .verifyCode{
  70. position: absolute;
  71. right: 10px;
  72. cursor: pointer;
  73. color:#003399 ;
  74. }
  75. .input:focus {
  76. outline: none;
  77. }
  78. .inputForm:focus-within {
  79. border: 1.5px solid #2d79f3;
  80. }
  81. .flex-row {
  82. display: flex;
  83. flex-direction: row;
  84. align-items: center;
  85. gap: 10px;
  86. justify-content: space-between;
  87. }
  88. .flex-row > div > label {
  89. font-size: 14px;
  90. color: black;
  91. font-weight: 400;
  92. }
  93. .span {
  94. font-size: 14px;
  95. margin-left: 5px;
  96. color: #2d79f3;
  97. font-weight: 500;
  98. cursor: pointer;
  99. }
  100. .button-submit {
  101. margin: 20px auto 10px auto;
  102. background-color: #009966;
  103. border: none;
  104. color: white;
  105. font-size: 15px;
  106. font-weight: 500;
  107. border-radius: 5px 5px 5px 5px;
  108. height: 50px;
  109. line-height: 50px;
  110. text-align: center;
  111. width: 200px;
  112. cursor: pointer;
  113. }
  114. .button-submit:hover {
  115. background-color: #003399;
  116. }
  117. .button-back{
  118. margin:0 auto 0px auto;
  119. color: #009966;
  120. color: white;
  121. font-size: 15px;
  122. font-weight: 500;
  123. border-radius: 5px 5px 5px 5px;
  124. height: 50px;
  125. line-height: 50px;
  126. text-align: center;
  127. width: 200px;
  128. cursor: pointer;
  129. border:1px solid #009966
  130. }
  131. .button-back a{
  132. color: #009966;
  133. }
  134. .p {
  135. text-align: center;
  136. color: black;
  137. font-size: 14px;
  138. margin: 5px 0;
  139. }
  140. .btn {
  141. margin-top: 10px;
  142. width: 100%;
  143. height: 50px;
  144. border-radius: 10px;
  145. display: flex;
  146. justify-content: center;
  147. align-items: center;
  148. font-weight: 500;
  149. gap: 10px;
  150. border: 1px solid #ededef;
  151. background-color: white;
  152. cursor: pointer;
  153. transition: 0.2s ease-in-out;
  154. }
  155. .btn:hover {
  156. border: 1px solid #2d79f3;
  157. ;
  158. }
  159. .login-text{
  160. margin: 10px 0;
  161. text-align: center;
  162. color:#003399 ;
  163. }
  164. .flex-center{
  165. width: 300px;
  166. margin: 0 auto;
  167. display: flex;
  168. align-items: center;
  169. justify-content: center;
  170. }
  171. .flex-center img{
  172. width: 180px;
  173. }
  174. .flex-center p{
  175. font-size:1.8rem ;
  176. color:#003399 ;
  177. margin: 0;
  178. }
  179. .tabs p{
  180. width: 50%;
  181. margin: 20px 0 15px 0;
  182. font-size: 14px;
  183. color:#BBBBBB;
  184. text-align: center;
  185. }
  186. .tabs p span{
  187. display: inline-block;
  188. padding:0 0 10px 0;
  189. cursor: pointer;
  190. }
  191. .active{
  192. color: #333 !important;
  193. }
  194. .active span{
  195. margin-top: 2px;
  196. border-bottom: 2px solid #009966;
  197. }
  198. input[type="checkbox"] {
  199. box-shadow: none;
  200. width: 15px;
  201. height: 15px;
  202. background-color: #333;
  203. margin: 0;
  204. }
  205. input[type="checkbox"]:checked {
  206. accent-color: #009966;
  207. }
  208. .lang{
  209. display: flex;
  210. align-items: center;
  211. color:#333333
  212. }
  213. .lang:hover {
  214. color: #009966;
  215. }
  216. .remeber-account{
  217. color: #BBBBBB !important;
  218. }
  219. .right-top{
  220. position: absolute;
  221. right: 10px;
  222. top:10px
  223. }
  224. @media (max-width:640px) {
  225. .form{
  226. transform: scale(.9);
  227. }
  228. }
  229. </style>
  230. <body>
  231. <div class="container" id="app">
  232. <div class="right-top">
  233. <div class="dropdown">
  234. <a style="color: #fff;" class="lang" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
  235. <svg style="width: 15px;height: 15px;" t="1727425180240" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1933" width="200" height="200"><path d="M233.92 230.25l61.76 61.76A255.872 255.872 0 0 0 170.667 512c0 139.2 111.125 252.459 249.493 255.915l6.507 0.085h96.469L457.6 702.464l60.33-60.33 25.366 25.365-0.064 0.085 166.741 166.72c-31.893 11.157-65.92 17.707-101.333 18.837l-0.192 0.171-0.17-0.15-5.462 0.129-5.483 0.042H426.667c-188.523 0-341.334-152.81-341.334-341.333 0-116.992 58.88-220.245 148.587-281.75z m363.413-59.583c188.523 0 341.334 152.81 341.334 341.333 0 116.992-58.88 220.245-148.587 281.75l-61.76-61.76A255.872 255.872 0 0 0 853.333 512c0-141.376-114.624-256-256-256h-96.469l65.515 65.515-60.331 60.33-118.016-118.037 0.064-0.043-74.07-74.069a340.288 340.288 0 0 1 101.334-18.837l0.15-0.192 0.213 0.17 5.44-0.128 5.504-0.042h170.666z" p-id="1934" fill="#ffffff"></path></svg>&nbsp;
  236. <span>{{lang}}</span>
  237. <span class="caret"></span>
  238. </a>
  239. <ul class="dropdown-menu" aria-labelledby="dropdownMenu1">
  240. <li @click="langChange('ZH')"><a href="#">简体中文</a></li>
  241. <li @click="langChange('en')"><a href="#">English</a></li>
  242. </ul>
  243. </div>
  244. </div>
  245. <form class="form">
  246. <div>
  247. <p class="login-text" translate>水工业控制、液冷系统流体控制的可靠服务商</p>
  248. <div class="flex-center">
  249. <img src="./assets/logo@2x.png" alt="">
  250. <p translate>&nbsp;班尼戈</p>
  251. </div>
  252. </div>
  253. <div class="flex-center tabs">
  254. <!-- <p :class="loginType == 'account' ? 'active' : ''" @click="changeTabs('account')"><span translate>账号登录</span></p> -->
  255. <!-- <p :class="loginType == 'phone' ? 'active' : ''" @click="changeTabs('phone')"><span translate>短信登录</span></p> -->
  256. </div>
  257. <div class="inputForm">
  258. <input type="text" class="input" id="phoneNumber" placeholder="账号">
  259. </div>
  260. <div class="inputForm">
  261. <input v-show="loginType == 'account'" type="password" class="input" id="password" placeholder="密码">
  262. <input v-show="loginType == 'phone'" type="text" class="input" id="verifyCode" placeholder="验证码">
  263. <a v-show="loginType == 'phone'" class="verifyCode" onclick="tool.getVerifyCode()" id="getVerifyCode" translate>获取验证码</a>
  264. </div>
  265. <div class="flex-row">
  266. <!-- <div class="flex-row">
  267. <input type="checkbox">
  268. <label class="remeber-account" translate>记住账号</label>
  269. </div> -->
  270. <div class="dropdown">
  271. <a class="lang" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
  272. <svg style="display:inlie-block;height: 15px;width: 15px;" t="1727425180240" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1933" width="200" height="200"><path d="M233.92 230.25l61.76 61.76A255.872 255.872 0 0 0 170.667 512c0 139.2 111.125 252.459 249.493 255.915l6.507 0.085h96.469L457.6 702.464l60.33-60.33 25.366 25.365-0.064 0.085 166.741 166.72c-31.893 11.157-65.92 17.707-101.333 18.837l-0.192 0.171-0.17-0.15-5.462 0.129-5.483 0.042H426.667c-188.523 0-341.334-152.81-341.334-341.333 0-116.992 58.88-220.245 148.587-281.75z m363.413-59.583c188.523 0 341.334 152.81 341.334 341.333 0 116.992-58.88 220.245-148.587 281.75l-61.76-61.76A255.872 255.872 0 0 0 853.333 512c0-141.376-114.624-256-256-256h-96.469l65.515 65.515-60.331 60.33-118.016-118.037 0.064-0.043-74.07-74.069a340.288 340.288 0 0 1 101.334-18.837l0.15-0.192 0.213 0.17 5.44-0.128 5.504-0.042h170.666z" p-id="1934"></path></svg>&nbsp;
  273. <span>{{lang}}</span>
  274. <span class="caret"></span>
  275. </a>
  276. <ul class="dropdown-menu" aria-labelledby="dropdownMenu1">
  277. <li @click="langChange('ZH')"><a href="#">简体中文</a></li>
  278. <li @click="langChange('en')"><a href="#">English</a></li>
  279. </ul>
  280. </div>
  281. </div>
  282. <div v-show="loginType == 'phone'" class="button-submit" onclick="tool.login(true)" translate>登陆</div>
  283. <div v-show = "loginType == 'account'" class="button-submit" onclick="tool.accountLogin()" translate>登陆</div>
  284. <div class="button-back" onclick="tool.linkOf('./index.html')"><a translate>返回</a></div>
  285. </div>
  286. </form>
  287. </div>
  288. </body>
  289. </html>
  290. <script src="blog/js/jquery.min.js"></script>
  291. <script src="vue/axios.min.js"></script>
  292. <script src="vue/api.js"></script>
  293. <script src="js/md5.js"></script>
  294. <script src="vue/vue.global.js"></script>
  295. <script src="vue/formTool.js"></script>
  296. <script src="blog/js/jquery.min.js"></script>
  297. <script src="blog/js/bootstrap.min.js"></script>
  298. <script>
  299. const { createApp, ref ,onMounted,createVNode, render} = Vue
  300. createApp({
  301. setup() {
  302. onMounted(()=>{
  303. let lg = localStorage.getItem('lang')
  304. switch (lg) {
  305. case 'ZH':
  306. lang.value = '简体中文'
  307. break;
  308. case 'en':
  309. lang.value = 'English'
  310. break;
  311. default:
  312. lang.value = '简体中文'
  313. break;
  314. }
  315. })
  316. const lang = ref('简体中文')
  317. const loginType = ref('account')
  318. const changeTabs = (type)=>{
  319. loginType.value = type
  320. }
  321. const langChange = (lg)=>{
  322. switch (lg) {
  323. case 'ZH':
  324. lang.value = '简体中文'
  325. break;
  326. case 'en':
  327. lang.value = 'English'
  328. break;
  329. default:
  330. break;
  331. }
  332. localStorage.setItem('lang',lg)
  333. window.location.reload()
  334. }
  335. return {
  336. loginType,
  337. changeTabs,
  338. langChange,
  339. lang
  340. }
  341. }
  342. }).mount('#app')
  343. </script>