How to prohibit the simple operation of Xiaobai from viewing the source code of a webpage

The so-called view source code is the intact code sent to the browser by someone else's server.
When reviewing the elements, you see that those codes that are not found in the source code are dynamically generated by executing js in the browser.

What you see by reviewing the elements is the final html code. Namely: source code + web page js rendering.

The way we usually view the source code of a webpage is

1. Right-click the mouse and click to view the source code of the webpage.
2. Press F12, ctrl+u, ctrl+shift+I, ctrl+shift+c to view the source code.
3. Press ctrl+s to save it and see the source code
4. XXXXX

Block out the complete code of right click, copy, and selection:

First of all, let's solve the right-click event, that is, we implement the right-click event ourselves, and do nothing in the right-click event function. In this way, the right-click menu will not pop up.

/**禁止右击事件菜单弹出*/
    document.οncοntextmenu=ContextMenu;
    function ContextMenu()  
    {  
      return false;  
    } 

Secondly, we prohibit the use of ctrl+s, ctrl+u, F12, ctrl+shift+I, ctrl+shift+c. code show as below:

 /** 全局事件监听*/
    document.body.onkeydown  = function(e){
			       var keyCode = e.keyCode || e.which || e.charCode;
			        var ctrlKey = e.ctrlKey || e.metaKey;
			        if(ctrlKey && (keyCode == 83 || keyCode == 85 || keyCode == 73)) {
			            e.preventDefault();
			            return false;
					}
					else if(ctrlKey && (keyCode == 83 || keyCode == 85 || keyCode == 67)) {
					    e.preventDefault();
					    return false;					
			        }else if(keyCode && keyCode == 123){
			            return false;
			        }
			   }

As long as you add the above code to your initialization function, then your page cannot view the source code. Of course, it is limited to the first three methods. It is impossible to realize pure .html with source code shielding! If you want to see the source code, there is no way to stop it. This script can only prevent unearned whites, and is not effective for computer veterans and great gods; and now many browsers have their own functions to view the source code of web pages. You can download any file with a website download tool like TELEPROT, which is equivalent to a mirror website. If you want to truly protect the source code, unless the server performs security settings and encryption.

js 里面的键盘事件经常用到的 记录一下
keyCode 8 = BackSpace BackSpace
keyCode 9 = Tab Tab
keyCode 12 = Clear
keyCode 13 = Enter
keyCode 16 = Shift_L
keyCode 17 = Control_L
keyCode 18 = Alt_L
keyCode 19 = Pause
keyCode 20 = Caps_Lock
keyCode 27 = Escape Escape
keyCode 32 = space
keyCode 33 = Prior
keyCode 34 = Next
keyCode 35 = End
keyCode 36 = Home
keyCode 37 = Left
keyCode 38 = Up
keyCode 39 = Right
keyCode 40 = Down
keyCode 41 = Select
keyCode 42 = Print
keyCode 43 = Execute
keyCode 45 = Insert
keyCode 46 = Delete
keyCode 47 = Help
keyCode 48 = 0 equal braceright
keyCode 49 = 1 exclam onesuperior
keyCode 50 = 2 quotedbl twosuperior
keyCode 51 = 3 section threesuperior
keyCode 52 = 4 dollar
keyCode 53 = 5 percent
keyCode 54 = 6 ampersand
keyCode 55 = 7 slash braceleft
keyCode 56 = 8 parenleft bracketleft
keyCode 57 = 9 parenright bracketright
keyCode 65 = a A
keyCode 66 = b B
keyCode 67 = c C
keyCode 68 = d D
keyCode 69 = e E EuroSign
keyCode 70 = f F
keyCode 71 = g G
keyCode 72 = h H
keyCode 73 = i I
keyCode 74 = j J
keyCode 75 = k K
keyCode 76 = l L
keyCode 77 = m M mu
keyCode 78 = n N
keyCode 79 = o O
keyCode 80 = p P
keyCode 81 = q Q at
keyCode 82 = r R
keyCode 83 = s S
keyCode 84 = t T
keyCode 85 = u U
keyCode 86 = v V
keyCode 87 = w W
keyCode 88 = x X
keyCode 89 = y Y
keyCode 90 = z Z
keyCode 96 = KP_0 KP_0
keyCode 97 = KP_1 KP_1
keyCode 98 = KP_2 KP_2
keyCode 99 = KP_3 KP_3
keyCode 100 = KP_4 KP_4
keyCode 101 = KP_5 KP_5
keyCode 102 = KP_6 KP_6
keyCode 103 = KP_7 KP_7
keyCode 104 = KP_8 KP_8
keyCode 105 = KP_9 KP_9
keyCode 106 = KP_Multiply KP_Multiply
keyCode 107 = KP_Add KP_Add
keyCode 108 = KP_Separator KP_Separator
keyCode 109 = KP_Subtract KP_Subtract
keyCode 110 = KP_Decimal KP_Decimal
keyCode 111 = KP_Divide KP_Divide
keyCode 112 = F1
keyCode 113 = F2
keyCode 114 = F3
keyCode 115 = F4
keyCode 116 = F5
keyCode 117 = F6
keyCode 118 = F7
keyCode 119 = F8
keyCode 120 = F9
keyCode 121 = F10
keyCode 122 = F11
keyCode 123 = F12
keyCode 124 = F13
keyCode 125 = F14
keyCode 126 = F15
keyCode 127 = F16
keyCode 128 = F17
keyCode 129 = F18
keyCode 130 = F19
keyCode 131 = F20
keyCode 132 = F21
keyCode 133 = F22
keyCode 134 = F23
keyCode 135 = F24
keyCode 136 = Num_Lock
keyCode 137 = Scroll_Lock
keyCode 187 = acute grave
keyCode 188 = comma semicolon
keyCode 189 = minus underscore
keyCode 190 = period colon
keyCode 192 = numbersign apostrophe
keyCode 210 = plusminus hyphen macron
keyCode 211 =
keyCode 212 = copyright registered
keyCode 213 = guillemotleft guillemotright
keyCode 214 = masculine ordfeminine
keyCode 215 = ae AE
keyCode 216 = cent yen
keyCode 217 = questiondown exclamdown
keyCode 218 = onequarter onehalf threequarters
keyCode 220 = less greater bar
keyCode 221 = plus asterisk asciitilde
keyCode 227 = multiply division
keyCode 228 = acircumflex Acircumflex
keyCode 229 = ecircumflex Ecircumflex
keyCode 230 = icircumflex Icircumflex
keyCode 231 = ocircumflex Ocircumflex
keyCode 232 = ucircumflex Ucircumflex
keyCode 233 = ntilde Ntilde
keyCode 234 = yacute Yacute
keyCode 235 = oslash Ooblique
keyCode 236 = aring Aring
keyCode 237 = ccedilla Ccedilla
keyCode 238 = thorn THORN
keyCode 239 = eth ETH
keyCode 240 = diaeresis cedilla currency
keyCode 241 = agrave Agrave atilde Atilde
keyCode 242 = egrave Egrave
keyCode 243 = igrave Igrave
keyCode 244 = ograve Ograve otilde Otilde
keyCode 245 = ugrave Ugrave
keyCode 246 = adiaeresis Adiaeresis
keyCode 247 = ediaeresis Ediaeresis
keyCode 248 = idiaeresis Idiaeresis
keyCode 249 = odiaeresis Odiaeresis
keyCode 250 = udiaeresis Udiaeresis
keyCode 251 = ssharp question backslash
keyCode 252 = asciicircum degree
keyCode 253 = 3 sterling
keyCode 254 = Mode_switch

Use the keyCode attribute of the event object to determine the entered key value
eg: if(event.keyCode==13)alert("enter!");
key-value correspondence table

A  0X65  U   0X85
B  0X66  V   0X86
C  0X67  W   0X87
D  0X68  X   0X88
E  0X69  Y   0X89
F  0X70  Z   0X90
G  0X71  0   0X48
H  0X72  1   0X49
I  0X73  2   0X50
J  0X74  3   0X51
K  0X75  4   0X52
L  0X76  5   0X53
M  0X77  6   0X54
N  0X78  7   0X55
O  0X79  8   0X56
P  0X80  9   0X57
Q  0X81 ESC  0X1B
R  0X82 CTRL  0X11
S  0X83 SHIFT 0X10
T  0X84 ENTER 0XD

Keycode constant table


The following constants can be used anywhere in the code to replace actual values:

Constants described
vbKeyLButton 0x1 mouse button
vbKeyRButton 0x2 Right
vbKeyCancel 0x3 CANCEL button
vbKeyMButton 0x4 mouse button
vbKeyBack 0x8 BACKSPACE key
vbKeyTab 0x9 TAB key
vbKeyClear 0xC CLEAR key
vbKeyReturn 0xD ENTER key
vbKeyShift 0x10 SHIFT key
vbKeyControl 0x11 CTRL key
vbKeyMenu 0x12 MENU key
vbKeyPause 0x13 PAUSE key
vbKeyCapital 0x14 CAPS LOCK key
vbKeyEscape 0x1B ESC key
vbKeySpace 0x20 SPACEBAR key
vbKeyPageUp 0x21 PAGE UP key
vbKeyPageDown 0x22 PAGE DOWN key
vbKeyEnd 0x23 END key
vbKeyHome 0x24 HOME key
vbUpv ARROW key
ARROW
RIGHT 0x25 ARROW key ARROW key 0x25
vbKeyDown 0x28 DOWN ARROW key
vbKeySelect 0x29 SELECT key
vbKeyPrint 0x2A PRINT SCREEN key
vbKeyExecute 0x2B EXECUTE key
vbKeySnapshot 0x2C SNAPSHOT key
vbKeyInsert 0x2D INSERT key
vbKeyDelete 0x2E DELETE key
vFbKeyHelp key 0x2E DELETE key vFbKeyHelp 0x2E DELETE
key

The A to Z keys have the same ASCII code as the A-Z letters:

Constant Value Description
vbKeyA 65 A key
vbKeyB 66 B key
vbKeyC 67 C key
vbKeyD 68 D key
vbKeyE 69 E key
vbKeyF 70 F key
vbKeyG 71 G key
vbKeyH 72 H key
vbKeyI 73 I key
vbKeyJ 74 J key
vbKeyK 75 K key
vbKeyL 76 L Key
vbKeyM 77 M key
vbKeyN 78 N key
vbKeyO 79 O key
vbKeyP 80 P key
vbKeyQ 81 Q key
vbKeyR 82 R key
vbKeyS 83 S key
vbKeyT 84 T key
vbKeyU 85 U key
vbKeyV 86 V key
vbKeyW 87 W key
vbKeyX 88 X key
vbKeyY 89 Y key
vbKeyZ 90 Z key

The 0-9 keys are the same as the ASCII codes of the numbers 0-9:

Constant value description
vbKey0 48 0 key
vbKey1 49 1 key
vbKey2 50 2 key
vbKey3 51 3 key
vbKey4 52 4 key
vbKey5 53 5 key
vbKey6 54 6 key
vbKey7 55 7 key
vbKey8 56 8 key
vbKey9 57 9 key

The following constants represent the keys on the numeric keypad:

Constants described
vbKeyNumpad0 0x60 0 key
vbKeyNumpad1 0x61 1 key
vbKeyNumpad2 0x62 2 bond
vbKeyNumpad3 0x63 3 key
vbKeyNumpad4 0x64 4 key
vbKeyNumpad5 0x65 5 key
vbKeyNumpad6 0x66 6 key
vbKeyNumpad7 0x67 7 key
vbKeyNumpad8 0x68 8 key
vbKeyNumpad9 0x69 9 key
vbKeyMultiply 0x6A MULTIPLICATION SIGN (*) Key
vbKeyAdd 0x6B PLUS SIGN (+) key
vbKeySeparator 0x6C ENTER key
vbKeySubtract 0x6D MINUS SIGN (-) key
vbKeyDecimal 0x6E DECIMAL POINT (.) key
vbKeyDivide 0x6F DIVISION SIGN (/) key

The following constants represent function keys:

Constants described
vbKeyF1 0x70 F1 key
vbKeyF2 0x71 F2 key
vbKeyF3 0x72 F3 key
vbKeyF4 0x73 F4 key
vbKeyF5 0x74 F5 key
vbKeyF6 0x75 F6 key
vbKeyF7 0x76 F7 key
vbKeyF8 0x77 F8 key
vbKeyF9 0x78 F9 key
vbKeyF10 0x79 F10 key
vbKeyF11 0x7A F11 key
vbKeyF12 0x7B F12 Key
vbKeyF13 0x7C F13 key
vbKeyF14 0x7D F14 key
vbKeyF15 0x7E F15 key
vbKeyF16 0x7F F16 key

Guess you like

Origin blog.csdn.net/qq_44273429/article/details/112580478