来自Google的密码强度Javascript验证代码
1 <script type="text/javascript">
2 var agt = navigator.userAgent.toLowerCase(); 3 var is_op = (agt.indexOf("opera") != -1); 4 var is_ie = (agt.indexOf("msie") != -1) && document.all && !is_op; 5 var is_ie5 = (agt.indexOf("msie 5") != -1) && document.all && !is_op; 6 7 function CreateXmlHttpReq(handler) { 8 var xmlhttp = null; 9 if (is_ie) { 10 var control = (is_ie5) ? "Microsoft.XMLHTTP" : "Msxml2.XMLHTTP"; 11 try { 12 xmlhttp = new ActiveXObject(control); 13 xmlhttp.onreadystatechange = handler; 14 } catch (ex) { 15 alert("You need to enable active scripting and activeX controls"); 16 } 17 18 } else { 19 xmlhttp = new XMLHttpRequest(); 20 xmlhttp.onload = handler; 21 xmlhttp.onerror = handler; 22 } 23 return xmlhttp; 24 } 25 26 27 function XmlHttpPOST(xmlhttp, url, data) { 28 try { 29 xmlhttp.open("POST", url, true); 30 xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); 31 xmlhttp.send(data); 32 33 } catch (ex) { 34 // do nothing 35 } 36 } 37 38 39 var myxmlhttp; 40 ratingMsgs = new Array(6); 41 ratingMsgColors = new Array(6); 42 barColors = new Array(6); 43 44 ratingMsgs[0] = "太短"; 45 ratingMsgs[1] = "弱"; 46 ratingMsgs[2] = "一般"; 47 ratingMsgs[3] = "很好"; 48 ratingMsgs[4] = "极佳"; 49 ratingMsgs[5] = "未评级"; 50 51 ratingMsgColors[0] = "#676767"; 52 ratingMsgColors[1] = "#aa0033"; 53 ratingMsgColors[2] = "#f5ac00"; 54 ratingMsgColors[3] = "#6699cc"; 55 ratingMsgColors[4] = "#008000"; 56 ratingMsgColors[5] = "#676767"; 57 58 barColors[0] = "#dddddd"; 59 barColors[1] = "#aa0033"; 60 barColors[2] = "#ffcc33"; 61 barColors[3] = "#6699cc"; 62 barColors[4] = "#008000"; 63 barColors[5] = "#676767"; 64 65 function CreateRatePasswdReq () 66 { 67 var passwd = getElement('Passwd').value; 68 var email = getElement('Email').value; 69 var lastname = getElement('LastName').value; 70 var firstname = getElement('FirstName').value; 71 var min_passwd_len = 6; 72 73 74 if (passwd.length < min_passwd_len) 75 { 76 if (passwd.length > 0) 77 { 78 DrawBar(0); 79 } 80 else 81 { 82 ResetBar(); 83 } 84 } 85 else 86 { 87 passwd = escape(passwd); 88 var params = 'Passwd='+passwd+'&Email='+email+'&FirstName='+firstname+'&LastName='+lastname; 89 myxmlhttp = CreateXmlHttpReq(RatePasswdXmlHttpHandler); 90 XmlHttpPOST(myxmlhttp, "https://www.google.com/accounts/RatePassword", params); 91 } 92 } 93 94 function getElement(name) 95 { 96 if (document.all) 97 { 98 return document.all(name); 99 } 100 return document.getElementById(name); 101 } 102 103 function RatePasswdXmlHttpHandler() 104 { // Can't check status since safari doesn't support it 105 if (myxmlhttp.readyState != 4) 106 { 107 return; 108 } 109 rating = parseInt(myxmlhttp.responseText); 110 DrawBar(rating); 111 } 112 113 function DrawBar(rating) 114 { 115 var posbar = getElement('posBar'); 116 var negbar = getElement('negBar'); 117 var passwdRating = getElement('passwdRating'); 118 var barLength = getElement('passwdBar').width; 119 120 if (rating >= 0 && rating <= 4) 121 { //We successfully got a rating 122 posbar.style.width = barLength / 4 * rating + "px"; 上一篇:一组常用的弹出窗口用法总结 下一篇:象调试C#程序一样调试JavaScript 更多相关文章
|
推荐文章
精彩文章
|