Web Sockets 目前在各个浏览器到终端支持性并不好, 只有IE 10+, FF 34+, Chrome 31+, Safari 7.1+, Android Browser 4.4+ 才得到支持。) }4 }8 W8 ]7 p! s& r
! X8 Z8 s$ F6 Z" P) |) K通过何种方式检测?比较简单到方式是直接判断全局对象中是否包含WebSocket对象即可: - $(document).ready(function() {7 t1 G- t& h" F/ o- ?- b
- if( typeof(WebSocket) != "function" ) {+ L2 U6 e. m" |9 ]' T
- $('body').html("<h1>Error</h1><p>Your browser does not support HTML5 Web Sockets. Try Google Chrome instead.</p>");$ ]2 J5 ^6 ~) F; Z
- }
; w+ r+ h; M- h- k6 Y - })/ N% C% M+ j9 b% u9 I5 u, J
复制代码
: q* `; L- {* F- j, X! M w: N但是这种方法存在局限性。 在 Android 中,即使浏览器不支持 WebSocket ,但是它还是存在这个属性。
所以比较严谨的方式是: - if (typeof WebSocket != 'undefined') {" _: V& [5 L, k) }5 T+ f3 x
- /*supported*/
# G5 ~2 C7 q/ A$ S& V! j* K- @/ m - }
. W& X4 b( O7 X, [/ l. L
- Q7 f6 I; t0 s. `/ Q1 ~- //or
' T) V' r/ O: C# g e' C - if (!!window.WebSocket && window.WebSocket.prototype.send) {
9 s z0 z. r( Q1 N) _: q6 ?' _" t: } - /*supported*/; b0 h1 v g! W
- }
复制代码 * {; P. s6 [( x6 i0 o
|