|
|
|||||||||
|
|||||||||
|
|||||||||
| |
||
| ||||||||||||||||||||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
How to tell the server the actual browser size?
How can I send the actual browser size to the serverside script before PageLoad or PreRender? I need this to be able to render my servercontrols in the right size.
What I tried: 1) Through cookies. I put javascript code into the <head> of my aspx-site which reads the actual browser size and sets the values as cookie. But reading out the values in PageLoad in my asp-codebehind file does not function. If possible I want to prevent using cookies... 2) Again I put javascript code into the <head> of my aspx site and call something like this Code:
window.location += "?width=" + width + "&height=" + height; On the server side I read the both values from the querystring. It does function but the site is called twice which makes this solution a bit clumsy! 3) I created a dummysite with a <form> which posts the 2 values to the real aspx-site. I'm not happy with this solution because it slows down the response time. 4) I cannot use dockable controls from third parties. 5) Another idea: My servercontrols are rendered to <div>s which have their width and height set as css-style. It would be cool if something like this would be possible: Code:
style="width:'javascript:windowwidth';height:'javascript: windowheight'" The both variables windowwidth and windowheight would again be calculated in the <head> of the aspx-site. Do you have any suggestions for me? Thanks in advance. |
|
#2
|
||||
|
||||
|
you can never set height and width in the Page_Load or PreRender because all of the html is rendered to html before it's sent to the client. The actual size is first known when the html is parsed at the client and by then - since the web is stateless - the connection to the server is "lost".
How about including a little JavaScript in the onload of the body tag that resizes the divs to the actual size? See this site for finding the size of the page in different browser types. Code:
<html>
<head>
<script type="text/javascript">
function resizePanel() {
// use half the window height for this panel
document.getElementById('<%= Panel1.ClientID %>').style.height = document.body.clientHeight / 2 + 'px';
// use a third of the window width for this panel
document.getElementById('<%= Panel1.ClientID %>').style.width = document.body.clientWidth / 3 + 'px';
}
</script>
</head>
<body onload="resizePanel();">
<form runat="server">
<asp:Panel ID="Panel1" runat="server">
insert your page contents here
</asp:Panel>
</form>
</body>
</html>
Last edited by kboek : November 22nd, 2009 at 02:29 AM. Reason: typo |
![]() |
| Viewing: ASP Free Forums > Programming > HTML, JavaScript And CSS Help > How to the server the actual browser size? |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|
|