用戶通過拖動滑塊行為來完成校驗(yàn),支持PC端及移動端。可以將用戶拖動行為的時間、精度,滑動軌跡等信息到服務(wù)器,然后進(jìn)行后臺算法驗(yàn)證。
使用方法:
依賴插件:jQuery、bootstrap、font-awesome
將引入樣式表的 <link> 標(biāo)簽復(fù)制并粘貼到 <head> 中,并放在所有其他樣式表之前。
<link href="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/css/bootstrap.min.css"> <link href="https://cdn.bootcss.com/font-awesome/5.7.2/css/all.min.css"> <link href="./src/slidercaptcha.css">
將引入腳本的 <script> 標(biāo)簽復(fù)制并粘貼到 <body> 最后面。
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script> <script src="./src/longbow.slidercaptcha.js"></script>
添加網(wǎng)頁Html元素
<div id="captcha"></div>
通過 javascript 初始化控件
<div id="captcha"></div> <script> $('#captcha').sliderCaptcha(); </script>
你還可以根據(jù)自己需要設(shè)置寬度與高度等配置
<script> $('#captcha').sliderCaptcha({ width: 280, height: 150, sliderL: 42, sliderR: 9, offset: 5, loadingText: '正在加載中...', failedText: '再試一次', barText: '向右滑動填充拼圖', repeatIcon: 'fa fa-redo' setSrc: function () { //設(shè)置圖片加載路徑 }, onSuccess: function () { //驗(yàn)證通過時回調(diào)此函數(shù) }, onFail: function () { //驗(yàn)證失敗時回調(diào)此函數(shù) }, onRefresh: function () { //點(diǎn)擊重新加載圖標(biāo)時回調(diào)此函數(shù) } }); </script>
詳細(xì)參數(shù):
名稱 | 類型 | 默認(rèn)值 | 說明 |
---|---|---|---|
width | integer | 280 | 背景圖片寬度 |
height | integer | 150 | 背景圖標(biāo)高度 |
sliderL | integer | 42 | 拼圖寬度 |
sliderR | integer | 9 | 拼圖突出半徑 |
offset | integer | 5 | 驗(yàn)證容錯偏差值 默認(rèn)5個像素偏差即認(rèn)為驗(yàn)證通過 |
loadingText | string | "正在加載中..." | 圖片加載時顯示的文本信息 |
failedText | string | "再試一次" | 驗(yàn)證失敗時顯示的文本信息 |
barText | integer | "向右滑動填充拼圖" | 拖動滑塊準(zhǔn)備拖動時顯示的文本信息 |
repeatIcon | string | "fa fa-redo" | 重新加載圖標(biāo) 需引用 font-awesome |
setSrc | function | "https://picsum.photos/?image=random" | 設(shè)置圖片加載路徑 |
onSuccess | function | null | 驗(yàn)證通過時回調(diào)此函數(shù) |
onFail | function | null | 驗(yàn)證失敗時回調(diào)此函數(shù) |
onRefresh | function | null | 點(diǎn)擊重新加載圖標(biāo)時回調(diào)此函數(shù) |
localImages | function | function () { return 'images/Pic' + Math.round(Math.random() * 4) + '.jpg'; } | 圖床圖片加載失敗時調(diào)用此方法返回本地圖片路徑 |
其他方法:
<div id="captcha"></div> <script> $('#captcha').sliderCaptcha(); $('#captcha').sliderCaptcha('reset'); </script>
參數(shù):
Method | Example | Description |
---|---|---|
reset | $('#captcha').sliderCaptcha('reset') | 重置控件 |