zoukankan      html  css  js  c++  java
  • Javascript 验证码

    需要用到验证码,突然想能否用js做验证码呢?
    当然js不能作图,但是可以用js模拟做验证码的
    于是花了20分钟按照我的想法尝试做,最后做出来比我想象中的效果还要好,呵呵
    先贴个图看看

    代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        
    <title>无标题页</title>
        
    <style type="text/css">
            .code
            
    {
                background-image
    :url(code.jpg);
                font-family
    :Arial;
                font-style
    :italic;
                color
    :Red;
                border
    :0;
                padding
    :2px 3px;
                letter-spacing
    :3px;
                font-weight
    :bolder;
            
    }
            .unchanged
            
    {
                border
    :0;
            
    }
        
    </style>
        
    <script language="javascript" type="text/javascript">
        
         
    var code ; //在全局 定义验证码
         function createCode()
         { 
           code 
    = "";
           
    var codeLength = 6;//验证码的长度
           var checkCode = document.getElementById("checkCode");
           
    var selectChar = new Array(0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');//所有候选组成验证码的字符,当然也可以用中文的
            
           
    for(var i=0;i<codeLength;i++)
           {
          
            
           
    var charIndex = Math.floor(Math.random()*36);
           code 
    +=selectChar[charIndex];
           
           
           }
    //       alert(code);
           if(checkCode)
           {
             checkCode.className
    ="code";
             checkCode.value 
    = code;
           }
           
         }
         
          
    function validate ()
         {
           
    var inputCode = document.getElementById("input1").value;
           
    if(inputCode.length <=0)
           {
               alert(
    "请输入验证码!");
           }
           
    else if(inputCode != code )
           {
              alert(
    "验证码输入错误!");
              createCode();
    //刷新验证码
           }
           
    else
           {
             alert(
    "^-^ OK");
           }
           
           }
           
        
    </script>
    </head>
    <body>
    <form  action="#">
        
    &nbsp;<input  type="text"  onclick="createCode()" id="input1" />
        
        
    <input type="text"  id="checkCode" class="unchanged" style=" 80px"  /><br />
        
    <input id="Button1"  onclick="validate();" type="button" value="确定" />&nbsp;
    </form>
    </body>
    </html>

    呵呵,高手看了还望别笑话,仅仅是为了练习而做着玩的 (:
    解释就不用说了,大家看注释应该就很清楚了
    其实那个用来混淆文字的背景图只是在文字下方加了个背景图,验证码还是不能防止Copy的,所以基本是不能当真正的验证码用的。
    这里设计到我最近学习js&css中的一些东西,呵呵,练习,学习,进步~

  • 相关阅读:
    Golang 函数
    关于Golang中database/sql包的学习
    golang第三方库goconfig的使用
    golang []byte和string相互转换
    golang xorm应用
    PHPExcel 导入
    贝叶斯定理
    myFocus 焦点图/轮播插件
    Maven 安装与使用(一)
    Javascript -- toFixed()函数
  • 原文地址:https://www.cnblogs.com/goody9807/p/1244674.html
Copyright © 2011-2022 走看看