2009-05-03 21 views
1

私はブラウザの表示可能領域の最大サイズを見積もる最良の方法を見つけようとしています。つまり、画面のサイズがツールバー、ブックマークなどに比べて少なくなることです。ウィンドウが最大化されていない場合や、実際にはさまざまなブラウザを実際に使用しているため、完璧ではありません。利用可能なブラウザ領域を見積もる良い方法

目的は、画像の最大サイズを計算することです。あなたはdocument.body.offsetWidthとdocument.body.offsetHeight性質を試すことがIEの場合、このコード

​​

を使用することができますFirefoxでは

+0

私は少し混乱しています。目的は何ですか?ページを表示しているときにJavaScriptを使用してブラウザのサイズを見つけようとしていますか、またはデザインの最適な寸法を把握しようとしていますか? –

+0

"ツールバー、ブックマークなどがないブラウザで表示可能なブラウザ"をビューポートといいます。 :-) そしてサミール・タルワールは言った。目的は何ですか? –

+0

目的は画像の最大サイズを計算することです。 –

答えて

3

をあなたはまた何にもjQuery'swidth()機能を使用することができます。

画面オブジェクトは、ここにそのプロパティを確認し、(それが役立つかもしれない)画面のプロパティを取得します。しかし、ウィンドウのサイズが変更された場合、これは変更され、元々レイアウトに基づいています。 watch for that eventでも構いませんが、複雑なことをするとパフォーマンスが低下する可能性があります。

+0

+1 width()関数を任意のセレクタで呼び出すことができます。これはheight()などの他の関数と一緒に非常に便利です。ウィンドウの上のように*サイズを変更することができますが、通常、ユーザーは通常どんなことが起こるかをよく知っているウィンドウのサイズを変更します。 –

2

$(window).width()link text

+0

-1は、クロスブラウザソリューションを使用しないためです。 – KooiInc

+0

... document.writeを使用する場合 – KooiInc

2

ビューポートを決定するクロスブラウザ機能。ブラウザの画面の幅、高さ、左上の位置を含む配列を返します。

function getViewport() { 
     var iWidth,iHeight,iTop,iLeft, 
      w = window, d = document; 
      iWidth = w.innerWidth || d.documentElement.clientWidth 
        || d.body.clientWidth || 0; 
      iHeight = w.innerHeight || d.documentElement.clientHeight 
        || d.body.clientHeight || 0; 
      iTop = w.pageYOffset || d.body.scrollTop 
        || d.documentElement.scrollTop || 0; 
      iLeft = w.pageXOffset || d.body.scrollLeft 
        || d.documentElement.scrollLeft || 0; 
      return [iWidth,iHeight,iLeft,iTop]; 
} 
関連する問題