本帖最後由 media 於 2014-12-10 19:08 編輯
$ U) F; n o' T3 @! q1 M1 Z% c! H ^% p
最近用javascript取視窗的大小時,遇到不同瀏覽器無法偵測或不同的寬高的問題。後來找到下段這段程式碼,當用於點圖放大並顯示於前景中央位置時非常有用。
, f0 y+ X+ i3 n e- <script type="text/javascript">7 C7 E& e6 E; }* ^
- <!--: P4 }, U9 v S) l5 w& D: W
9 M7 B/ \: Y% Q/ k, @' c+ E* N- var viewportwidth;# v- F, z4 \ K) `3 {
- var viewportheight;1 b9 x, N V, C! D* m& c j3 z2 S! P
- 6 h0 e( J+ r" k" A; v) z8 x9 i
- // the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
" k. @+ F% t$ R3 V - & i' A4 \8 v: K- h5 M
- if (typeof window.innerWidth != 'undefined')
9 e# _8 y- N1 I2 H1 Y% g* A+ Z - {
% f! C, G! w; f0 ~) X' ]% C - viewportwidth = window.innerWidth,
* b5 Y3 N$ G2 _ m% o! W - viewportheight = window.innerHeight; c' ]$ Y7 T2 o9 d
- } y$ Z8 T$ I5 y: g- O0 F: |8 y
- ( R! b/ L9 w4 H4 g [8 I5 e
- // IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
' H X5 A1 G) |( g2 u
/ N+ C+ D) n4 V- else if (typeof document.documentElement != 'undefined'0 e& U' _! o! ^6 R C' J( Z: X9 N" E i
- && typeof document.documentElement.clientWidth !=
5 e8 c- o# S5 Y! y0 H2 E - 'undefined' && document.documentElement.clientWidth != 0). t/ @' G: I( P% {6 P
- {0 G* K3 z3 r6 H4 h" f. d3 U% l. w: W
- viewportwidth = document.documentElement.clientWidth,
3 O+ X! ^" Q1 m! A8 H - viewportheight = document.documentElement.clientHeight
/ K( T" r( z z - }
5 B, { L% O" e# T4 K7 `8 `9 g -
8 ~3 |/ I1 l+ `( f d4 s/ o3 Z - // older versions of IE
4 N1 Z; j! V# }/ s: F - ' X( k$ ~& J! y; d8 V
- else
+ l/ G* f" m- ]6 f1 v4 L0 { - {
8 h) E: J# W; Q0 x0 y - viewportwidth = document.getElementsByTagName('body')[0].clientWidth,
* {- C, L) ]7 O8 z/ g( m8 S - viewportheight = document.getElementsByTagName('body')[0].clientHeight
8 ?, ^, Z4 f: A" \' U - }+ c/ U1 o5 L$ G) C
- document.write('<p>Your viewport width is '+viewportwidth+'x'+viewportheight+'</p>');
- y" f% D+ o: ?6 @* s, F4 p- c# f - //-->
: F0 I- _/ a. j& V - </script>
複製代碼 結果: 在google chrome 顯示結果+ v! Q9 `2 [& m; n; q: l* ^
1 u L+ {% T5 i1 @8 p! \
/ [3 B" U8 i' n
來源: Get viewport size (width and height) with javascript0 X5 Q' C; ]; B: [$ L1 S6 p; |: ^
2 N t+ T! d" t1 b9 q* @6 c
9 z0 K& d# D/ e) e |
|