textarea文本框限制输入文本数量(Firefox,Chrome,Safari)、Javascript取得字符ASCII码值、常见字符ASCII码值

	// focus用来对应Chrome浏览器往文本框拖入值
	// mouseenter mouseleave 用来对应Firefox浏览器往文本框拖入值
	$("#input").bind("blur focus keyup mouseenter mouseleave", function(){handleMaxlengthLimit("#input", "#label", 1024);})

function handleMaxlengthLimit(idInput, idLabel, maxLength) {
	// Safari浏览器往文本框拖动值时,会自动跟上2个Unicode字符值为0的不可见字符,删除
    var trimedValue = $(idInput).val().trim().replace(/\u0000+/g,"");
	
	if (trimedValue.length > maxLength) {
		$(idLabel).text(0);
		$(idInput).val(trimedValue.substr(0, maxLength))
	} else {
		$(idLabel).text((maxLength - trimedValue .trim().length));
		$(idInput).val(trimedValue)
	}
}

// 可以通过如下的javascript代码,得到字符串中每个字符对应的Unicode码的值,在Safari浏览器下,就可以发现往浏览器拖入文本值时,会被自动追加上2个Unicode值为0的不可见字符
for (var s in $.trim($("#input").val())) {
	alert($("#input").val()[s]);
	alert($("#input").val()[s].charCodeAt(0));
}


$("#foo").bind( "blur keyup click mouseenter", function(event) {
    switch(event.type) {
        case "blur":
        case "keyup": alert('first'); break;
        case "click": alert('click' ); break;
        case "mouseenter": alert('mouse'); break;
        default: break;
    }
});



ASCII字符编码表

ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符
0 NUT 32 (space) 64 @ 96 、
1 SOH 33 ! 65 A 97 a
2 STX 34 ” 66 B 98 b
3 ETX 35 # 67 C 99 c
4 EOT 36 $ 68 D 100 d
5 ENQ 37 % 69 E 101 e
6 ACK 38 & 70 F 102 f
7 BEL 39 , 71 G 103 g
8 BS 40 ( 72 H 104 h
9 HT 41 ) 73 I 105 i
10 LF 42 * 74 J 106 j
11 VT 43 + 75 K 107 k
12 FF 44 , 76 L 108 l
13 CR 45 - 77 M 109 m
14 SO 46 . 78 N 110 n
15 SI 47 / 79 O 111 o
16 DLE 48 0 80 P 112 p
17 DCI 49 1 81 Q 113 q
18 DC2 50 2 82 R 114 r
19 DC3 51 3 83 X 115 s
20 DC4 52 4 84 T 116 t
21 NAK 53 5 85 U 117 u
22 SYN 54 6 86 V 118 v
23 TB 55 7 87 W 119 w
24 CAN 56 8 88 X 120 x
25 EM 57 9 89 Y 121 y
26 SUB 58 : 90 Z 122 z
27 ESC 59 ; 91 [ 123 {
28 FS 60 < 92 \ 124 |
29 GS 61 = 93 ] 125 }
30 RS 62 > 94 ^ 126 ~
31 US 63 ? 95 — 127 DEL

你可能感兴趣的:(JavaScript)