JavaScript 純JS生成驗證碼

js生成驗證碼其實原理很簡單,第一就是創(chuàng)建畫布,第二獲取驗證碼,第三將驗證碼畫到畫布上,接下來就看代碼吧!

yanzhengma.png
添加畫布
<canvas id="myCanvas" width="70px" height="27px" style="float: right; border:1px solid #d3d3d3;"></canvas>
js生成驗證碼
function createCode() {
    code = "";
    var codeLength = 4;//驗證碼的長度,可變
    var canvas=document.getElementById('myCanvas');//獲取畫布
    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];
    }
     if (canvas) {
        var ctx=canvas.getContext('2d');
        ctx.fillStyle='#FFFFFF';
        ctx.fillRect(0,0,70,27);
        ctx.font="20px arial";
        // 創(chuàng)建漸變
        var gradient=ctx.createLinearGradient(0,0,canvas.width,0);
        gradient.addColorStop("0","magenta");
        gradient.addColorStop("0.5","blue");
        gradient.addColorStop("1.0","red");
        // 用漸變填色
        ctx.strokeStyle=gradient;
        ctx.strokeText(code,5,20);//畫布上添加驗證碼
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,323評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,695評論 19 139
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,657評論 4 61
  • 今天剽悍晨讀分享的書是《瞬變》,作者是奇普·希思和丹·希思考 最近想做的一件事情就是減肥。但是減肥對我來說是一件很...
    Amy米娜閱讀 277評論 0 2
  • 清明小長假回家,最辣眼睛的事莫過于央視少兒播出的新版《葫蘆兄弟》了。當(dāng)我懷著無比憧憬又期待的心情看了幾集之后,真的...
    水知Water閱讀 652評論 1 3

友情鏈接更多精彩內(nèi)容