トップ回答者
Javascriptのスクリーンサイズを得る関数screen.width,screen.heightが異常値を返す

質問
-
Internet Explorer 10 on Windows8において、Javascriptの関数のうち、スクリーンサイズ(画面の解像度)を得る関数が正しく動作していません。
例:1920*1080(FullHD)のモニターの場合。
関数:document.write(screen.width + '*' + screen.height);
Firefox 17:1920*1080
Google Chrome:1920*1080
IEコンポーネントブラウザ(IE7指定):1920*1080
Internet Explorer 10:1670×939
一応縦横比は16:9に近いですが、これでは画面サイズに依存するJavascriptが正しく動作しません。
なお、この現象はデスクトップモードのIE10(32bit?)のみ発生します。
MetroモードのIE10では正常な値(1920*1080)が表示されます。
追加:
F12開発者ツールにて、各ブラウザモードに変更した結果です。
IE10標準:1670*939
IE10互換表示:1670*939
IE9モード:1670*939
IE8モード:1670*939
IE7モード:1670*939
環境:
OS:Windows8 Exterprise 64bit
CPU:AMD FX-8120
Memory:16GB
Graphic: ATI RADEON HD 6770
Monitor:MITSUBISHI RDT233WX-3D
- 編集済み Darastof 2013年2月5日 14:41 情報追加
回答
-
本問題について、原因が判明いたしました。
Internet Explorer 10のメニュー→表示(V)→拡大(Z)が115%になっておりました。
これにより、Window.width,Window.heightが1920*1080の約1/1.15倍である1670*939となっていたようです。
これを100%に戻すことにより正常な値に、150%にしたときに1/1.50倍となることを確認しました。返信を頂いた(´・ω・`)さま、佐祐理さま、お騒がせいたしました。
- 回答としてマーク Hebikuzure aka Murachi AkiraMVP, Moderator 2013年2月6日 14:09
すべての返信
-
本問題について、原因が判明いたしました。
Internet Explorer 10のメニュー→表示(V)→拡大(Z)が115%になっておりました。
これにより、Window.width,Window.heightが1920*1080の約1/1.15倍である1670*939となっていたようです。
これを100%に戻すことにより正常な値に、150%にしたときに1/1.50倍となることを確認しました。返信を頂いた(´・ω・`)さま、佐祐理さま、お騒がせいたしました。
- 回答としてマーク Hebikuzure aka Murachi AkiraMVP, Moderator 2013年2月6日 14:09