- PR -

ブラウザーの大きさを知りたい

1
投稿者投稿内容
Kuma
ベテラン
会議室デビュー日: 2001/12/20
投稿数: 66
投稿日時: 2004-10-22 13:06
Webアプリで教えていただきたいことがあります。
使用言語はC#です。

教えていただきたいことは、ブラウザーの大きさを知りたいということです。
JavaScriptなら window.innnerHeight、window.innerWidth で求められる値です。

やりたいことは、DataGridの大きさを現状のブラウザーで目いっぱいに表示したいのです。
WindowsForm と違って、onSize() は使えないので、Page_Load()のタイミングで使おうと考えています。
できればJavaScriptを使わず、C#のみでやりたいと思っています。

以上よろしくお願いいたします。
burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2004-10-22 13:12
サーバーサイドでブラウザの大きさを取得するのはできないのではないでしょうか。
サーバーに投げられるリクエスト内にそんな情報おそらくないですよね?
Kuma
ベテラン
会議室デビュー日: 2001/12/20
投稿数: 66
投稿日時: 2004-10-22 13:29
burton999さん、ご回答ありがとうございます。

やはりサーバーサイドへはこの情報をあげませんか。
ディバックで止めて、this にかかわる項目を探してみたのですが、らしいのが見つけられないのでここにアップさせていただきました。

OnSubmitのタイミングでJavaScriptで値を取得して、Text(hidden)属性の項目に経由で、サーバーに渡してやるか。
フレームで構築して、Height=100%とやるかでしょうか?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-10-23 05:42
 JavaScriptで、BODY要素のClientHegiht, ClientWidthを調べます。

 詳しくはこっちのスレッドであげている、MSDNのヘルプを参照。
_________________
Kuma
ベテラン
会議室デビュー日: 2001/12/20
投稿数: 66
投稿日時: 2004-10-23 23:26
Jittaさん。教えていただいたスレッドが、そのものですね。
ありがとうございます。
Kuma
ベテラン
会議室デビュー日: 2001/12/20
投稿数: 66
投稿日時: 2004-11-05 18:40
.net C# は<form></form>で囲ってしまうので、heightが画面の大きさ以上になってしまいます。
で、教えていただいたところのものはそのまま使えませんでした。

試行錯誤の上、以下のようにして実現しました。
結局Scriptのお世話になりました。
---------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css">
td{ height:100; }
</style>
<SCRIPT LANGUAGE="JavaScript1.2">
<!--
function resize(){
document.all("div1").style.height=
document.body.offsetHeight -
document.all("div1").offsetTop - 20;
}
window.onresize = resize;
//-->
</SCRIPT>
</HEAD>
<body onload=resize()>
<form name="Form1" method="post" action="test2.htm"
    language="javascript" id="Form1">
<FONT face="MS UI Gothic">
<INPUT id="Text1" type="text" size="13" name="Text1"><br>
<INPUT id="Text2" type="text" size="13" name="Text2"><br>
<INPUT id="Text3" type="text" size="13" name="Text3"><br>
<INPUT id="Text4" type="text" size="13" name="Text4"><br>
<hr>
<div style="overflow:auto; width:100%; height:500px;
       position:static;" id="div1">
<table border="1" id="table1" align=center>
<tr>
<th>0000000000000000001</th>
<th>0000000000000000002</th>
<th>0000000000000000003</th>
</tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
<tr align=center><td>×</td><td>×</td><td>○</td></tr>
</table>
</div>
</FONT>
</form>
</body>
</HTML>
1

スキルアップ/キャリアアップ(JOB@IT)