news 2026/8/4 23:53:01

EmailLogin

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
EmailLogin

EmailLogin.html

<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /> <title>邮箱登录</title> <!--<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />--> <meta name="viewport" content="initial-scale=1.0, width=device-width"> <link rel="stylesheet" type="text/css" href="../css/login.css" /> <link href="../images/bitnami_favicon-16x16.png" rel="icon" sizes="16x16" type="image/png"> <!--<link rel="preload" href="../Font/simkai.ttf" as="font" crossorigin="anonymous">--> <link rel="preload" href="../Font/AaBanRuoKaiShu-2.ttf" as="font" type="font/ttf" crossorigin> <script type="text/javascript" src="../js/utility.js" charset="utf-8"></script> <script type="text/javascript" src="../js/Algorithm/sha1.js" charset="utf-8"></script> <script type="text/javascript" src="../js/login.js" charset="utf-8"></script> <script type="text/javascript" src="../js/email_valicode.js" charset="utf-8"></script> <script src="../js/loadFont.js"></script> </head> <body> <div id="container"> <div id="ng"> <h3 id="ng-h">邮箱登录</h3> <app-avater-heder id="ng-pic"><img id="pic" alt="" src="../images/sign-in-avatar.svg" /></app-avater-heder> </div> <div id="mainfun"> <form id="bg" onsubmit="subcontrol()" target="submitaccount"> <div id="txtdiv1"> <input id="emalname" name="email" type="email" class="txt" autocomplete="on" placeholder="邮箱" onblur="CheckEmailForValicode()" onfocus="CheckEmailForValicode()" tabindex="1"/> </div> <div id="txtdiv2"> <input id="lgpswd" type="password" class="txt" maxlength="4" autocomplete="off" placeholder="验证码" tabindex="2"> <div class="send_btn"><a id="a_send_btn" href="javascript:sendvalicode(max_wait)" class="send_btn_link">获取验证码</a></div> </div> <div id="lgdiv"> <button id="lgbtn" type="button" onclick="loginsubmit()" onkeyup="loginsubmit()">登录/注册</button> <iframe title="back" name="submitaccount" style="display: none;"></iframe> </div> <div id="hint">&nbsp;</div> </form> </div> </div> <footer id="_footer" > <a target="_self" href="../">自转首页</a>&nbsp;&nbsp; <a target="_blank" href="../">新开首页</a> </footer> </body> </html>

login.js

// JavaScript Document // window.onload = function(){ if(localStorage.getItem('href_beforelogin')==null) { localStorage.setItem('href_beforelogin','../webpage/Home.html.php'); } sessionStorage.setItem('subCtrl',true); //聚焦,只有聚焦了select()才有效。 $('emalname').focus(); //设置按钮的快捷键 $('emalname').accessKey=13; //回车键的键值 $('lgpswd').accessKey=13; //回车键的键值 //form的tableindex $('emalname').tabIndex=1; $('lgpswd').tabIndex=2; $('lgbtn').tabIndex=3; //邮箱名输入框回车按钮事件 $('emalname').onkeydown = function () { if (event.keyCode == 13) { event.preventDefault(); $('lgpswd').select(); } } //验证码框回车按钮事件 $('lgpswd').onkeydown = function () { if (event.keyCode == 13) { event.preventDefault(); loginsubmit(); } } } function subcontrol() { return (sessionStorage.getItem('subCtrl')==true)?true:false; } var lgwait=3; var id_interval=0; function loginsubmit() { $('hint').innerText=""; if($('emalname').value==null || $('emalname').value==''){ $('hint').innerText="用户名为空!"; sessionStorage.setItem('subCtrl',false); } else sessionStorage.setItem('subCtrl',true); if($('lgpswd').value==null || $('lgpswd').value=='') { $('hint').innerText+="密码为空!"; sessionStorage.setItem('subCtrl',false); } else { sessionStorage.setItem('subCtrl',true); } if(sessionStorage.getItem('subCtrl')=='true') { try { var hintmsg=new XMLHttpRequest(); var user_name=$('emalname').value; var user_pswd = hex_sha1($('lgpswd').value);//引用sha1.js localStorage.setItem('useremail',user_name); var account=new Object(); account={"user_name":user_name, "user_pswd":user_pswd}; var accountmsg=JSON.stringify(account); var responseMsg; if (hintmsg!=null) { hintmsg.open("POST","../php/backwork/login_chk.php",true); hintmsg.setRequestHeader("Content-Type", "application/json;charset=utf-8"); hintmsg.send(accountmsg); hintmsg.onreadystatechange = function () { if(hintmsg.readyState==4 && this.status==200) { responseMsg=''; if(hintmsg.responseText!=''){ responseMsg=JSON.parse(hintmsg.responseText); sessionStorage.setItem('transportbuf',hintmsg.responseText); } //console.log(responseMsg); if(responseMsg.info!='' || responseMsg.info==null) $('hint').innerText+=responseMsg.info; else $('hint').innerText+='no message'; if(responseMsg.code==1302 || responseMsg.code==1103){ localStorage.setItem("login_info",JSON.stringify(responseMsg.data)); //判断后再处理 $('hint').innerText=responseMsg.info+lgwait+"秒后跳转。"; id_interval=setInterval(selfgoto,1000,localStorage.getItem("href_beforelogin")); } } } } } catch(e) { console.log(e); } } } function selfgoto(url) { --lgwait; $('hint').innerText=lgwait+"秒后跳转。" if(lgwait<=0) { clearInterval(id_interval); if(url==''||url==null) self.location='../webpage/Home.html.php'; else self.location=url; } //console.log(lgwait); //console.log("id:",id_interval); }

logout.js

// JavaScript Document function logout() { if(JSON.parse(localStorage.getItem("login_info"))!=null) { localStorage.removeItem("login_info"); } if(localStorage.getItem(href_beforelogin)!='') { self.location=localStorage.getItem(href_beforelogin); } } function loginshow() { if(JSON.parse(localStorage.getItem("login_info"))!=null) { let now=Math.floor(new Date().getTime()/1000); let expireon=JSON.parse(localStorage.getItem("login_info")).expireon; //console.log(expireon,now); if(now < expireon) { //show document.getElementById("logincontent").style.display="contents"; } //定时隐藏 setTimeout(function(){ document.getElementById("logincontent").style.display="none"; },(expireon-now)*1000); } else { //hidden document.getElementById("logincontent").style.display="none"; } }

email_valicode.js

// JavaScript Document function logout() { if(JSON.parse(localStorage.getItem("login_info"))!=null) { localStorage.removeItem("login_info"); } if(localStorage.getItem(href_beforelogin)!='') { self.location=localStorage.getItem(href_beforelogin); } } function loginshow() { if(JSON.parse(localStorage.getItem("login_info"))!=null) { let now=Math.floor(new Date().getTime()/1000); let expireon=JSON.parse(localStorage.getItem("login_info")).expireon; //console.log(expireon,now); if(now < expireon) { //show document.getElementById("logincontent").style.display="contents"; } //定时隐藏 setTimeout(function(){ document.getElementById("logincontent").style.display="none"; },(expireon-now)*1000); } else { //hidden document.getElementById("logincontent").style.display="none"; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/31 8:41:55

开题报告-基于BS的在线电影视频播放系统的设计与实现

目录 研究背景与意义系统核心功能技术选型创新点设计预期成果应用价值 项目技术支持可定制开发之功能亮点源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作 研究背景与意义 在线电影视频播放系统基于B/S架构&#xff08;Browser/Server&…

作者头像 李华
网站建设 2026/7/26 9:17:34

【课程设计/毕业设计】基于SSM的疫情健康上报管理系统每日体温填报 异常症状上报(咳嗽、发热等) 数据可视化【附源码、数据库、万字文档】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/8/4 14:31:10

SSM毕设选题推荐:基于SSM的手机商城基于SSM实现手机销售商城系统【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/8/1 4:17:47

刚果总统齐塞克迪达沃斯发言-万祥军| 世界经济论坛·国际科学院组织

‍刚果总统齐塞克迪达沃斯发言-万祥军| 世界经济论坛国际科学院组织 2026年1月&#xff0c;瑞士达沃斯再次成为全球瞩目的焦点。世界经济论坛年会在此召开&#xff0c;来自全球65位国家元首和政府首脑齐聚一堂&#xff0c;共同探讨当前世界面临的最紧迫挑战。在众多重量级发言…

作者头像 李华
网站建设 2026/7/26 13:57:25

AC掉线后,本地转发的AP还能用吗?答案藏在这3个关键点里

在企业无线部署中,AC(无线控制器)作为“大脑”,一旦掉线就容易让人慌神——尤其是开启本地转发模式时,已连用户会不会断网?新用户能不能接入?很多运维同学都会混淆通用场景与本地转发的特殊逻辑,今天就一次性讲透,帮你快速排障、理清真相。 先明确核心前提:企业WLAN…

作者头像 李华