純js實現的前端驗證插件

之前有寫過一個在C#後臺實現的點擊圖上上文字實現安全驗證的插件,相對於js驗證來說更安全,缺點是只能在c#後臺實現,最近發現一個純js實現的安全驗證插件,最大好處就是簡潔,跨平臺。

下面直接把代碼貼出來分享給大家:

運行示例:http://img.lwpoor.cn/verify/login.html

這裏包含兩個驗證的控件:1、拖動滑塊拼接圖片完成驗證   2、點擊圖片上的文字完成驗證

verify.js

http://img.lwpoor.cn/verify/verify.js

verify.css

http://img.lwpoor.cn/verify/verify.css

 

如何使用?

新建一個html頁面:

<!DOCTYPE html>
<html style="font-size:10px;">
<head>
<meta charset="UTF-8">
    <title>純js實現的一個安全驗證插件</title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no">
    <script type="text/javascript" src="https://images.zhongmin.cn/wap/js/jquery-1.9.1.min.js"></script>
    <link rel="stylesheet" href="http://img.lwpoor.cn/verify/verify.css">
	<style>
    .body-shade {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.3);
        z-index: 100;
    }
</style>
</head>

<body>
	<input type="button" value="拖動滑塊驗證" onclick="verify1();" />
	<input type="button" value="點擊圖片驗證" onclick="verify2();" />
    <!--遮罩-->
    <div class="body-shade" style="display:none;"></div>
    <div class="verify-alert verify1" style="display:none;width:360px;">
        <p class="verify-title">拖動滑塊完成安全驗證</p>
        <i class="icon-close"></i>
        <div id="mpanel4" class="mpanel mpanelslide"></div>
        <p class="slidefail">驗證失敗,請控制拼圖塊對齊缺口</p>
        <div class="slidesuccess">
            <img src="http://images.zhongmin.cn/zhongmin_wap2017/verify/images/slidesuccess.png" alt="">
            <p style="color: #22ac38">驗證通過</p>
        </div>
    </div>
    <div class="verify-alert verify2" style="display: none;width:360px;">
        <p class="verify-title">請完成安全認證</p>
        <i class="icon-close"></i>
        <div id="mpanel5" class="mpanel mpanelpoints"></div>
    </div>
</body>
<script type="text/javascript" src="http://img.lwpoor.cn/verify/verify.js" ></script>
<script>
    function verify1() {
        $('.body-shade').show();
        $('.verify1').show();
    }
    function verify2() {
        $('.body-shade').show();
        $('.verify2').show();
    }        
    var v1 = $('#mpanel4').slideVerify({
        type : 2,       //類型
        vOffset : 5,    //誤差量,根據需求自行調整
        vSpace : 5, //間隔
        imgName : ['3.png'],
        imgSize : {
            width: '100%',
            height: '200px',
        },
        blockSize : {
            width: '40px',
            height: '40px',
        },
        barSize : {
            width : '100%',
            height : '20px',
        },
        ready : function() {
        },
        success : function() {
            //alert('驗證成功,添加你自己的代碼!');
            //......後續操作
        },
        error : function() {
            //alert('驗證失敗!');
        }
        
    });  
    var v2 = $('#mpanel5').pointsVerify({
        defaultNum : 4, //默認的文字數量
        checkNum : 3,   //校對的文字數量 
        vSpace : 5, //間隔
        imgName : ['3.png'],
        imgSize : {
            width: '100%',
            height: '200px',
        },
        barSize : {
            width : '100%',
            height : '40px',
        },
        ready : function() {
        },
        success : function(res) {
            //alert('驗證成功,添加你自己的代碼!');
            //......後續操作
			console.log(res)
        },
        error : function(res) {
            //alert('驗證失敗!');
        }
    });         
    $('.icon-close').on('click',function () {
        $('.verify-alert,.mask-layer').hide();
        $('.body-shade').hide();
    })        
</script>
</html>

運行結果:

1、拖動滑塊完成安全驗證

 

2、點擊圖片上的文字完成驗證

 

關鍵代碼已經寫了註釋,大家可下載本地運行查看。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章