本文實例為大家分享了js實現驗證碼干擾的具體代碼,供大家參考,具體內容如下
效果
代碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
<!DOCTYPE html> < html > < head > < meta charset = "UTF-8" > < title ></ title > < style > *{ padding: 0; margin: 0; } canvas{ background: #272822; } </ style > </ head > < body > < canvas id = 'canvas' width = '800' height = '500' ></ canvas > < script > //獲得畫板 var canvas=document.getElementById('canvas'); //獲得繪畫環境 var cv=canvas.getContext('2d'); cv.fillStyle='#272822'; cv.fillRect(0,0,800,500); cv.font='80px 微軟雅黑'; cv.fillStyle='greenyellow'; cv.fillText( Math.floor(Math.random()*10000),200,200); //獲得所有的圖像像素點信息 var alldata=cv.getImageData(0,0,800,500); //獲得像素點的個數 var dian=alldata.data.length/4; for(var i=0;i< 10000 ;i++){ //取隨機數 var num = Math .floor(Math.random()*dian); //計算像素點對應的四條信息從幾號開始 var start=(num-1)*4; alldata.data[start]=Math.floor(Math.random()*256); alldata.data[start+1]=Math.floor(Math.random()*256); alldata.data[start+2]=Math.floor(Math.random()*256); } //將數據寫回畫板 cv.putImageData(alldata,0,0); </script> </ body > </ html > |
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/weixin_44635198/article/details/113921972