Home  >  Article  >  Web Front-end  >  JS implementation ideas and code for obtaining browser and screen width and height information_javascript skills

JS implementation ideas and code for obtaining browser and screen width and height information_javascript skills

WBOY
WBOYOriginal
2016-05-16 17:27:411005browse

The width of the visible area of ​​the web page: document.body.clientWidth
The height of the visible area of ​​the web page: document.body.clientHeight
The width of the visible area of ​​the web page: document.body.offsetWidth (including the width of the edges)
The height of the visible area of ​​the web page: document.body.offsetHeight (including the width of the edge)
The full text width of the web page body: document.body.scrollWidth
The full text height of the web page body: document.body.scrollHeight
The scrolled height of the web page: document.body .scrollTop
The left side of the web page being scrolled: document.body.scrollLeft
The upper body of the web page: window.screenTop
The left side of the web page body: window.screenLeft
The high screen resolution: window. screen.height
Width of screen resolution: window.screen.width
Screen available work area height: window.screen.availHeight
Screen available work area width: window.screen.availWidth
HTML exact Positioning: scrollLeft, scrollWidth, clientWidth, offsetWidth
scrollHeight: Get the scroll height of the object.
scrollLeft: Sets or gets the distance between the left edge of the object and the leftmost end of the currently visible content in the window
scrollTop: Sets or gets the distance between the topmost edge of the object and the topmost end of the visible content in the window
scrollWidth: Get the scroll width of the object
offsetHeight: Get the height of the object relative to the layout or the parent coordinate specified by the offsetParent property
offsetLeft: Get the height of the object relative to the layout or the parent coordinate specified by the offsetParent property Calculate the left position
offsetTop: Get the calculated top position of the object relative to the layout or the parent coordinate specified by the offsetTop attribute
event.clientX The horizontal coordinate relative to the document
event.clientY The vertical coordinate relative to the document
event.offsetX is the horizontal coordinate relative to the container
event.offsetY is the vertical coordinate relative to the container
document.documentElement.scrollTop is the value of vertical scrolling
event.clientX document.documentElement.scrollTop is relative to the horizontal position of the document The amount of coordinate scrolling in the vertical direction

The difference between IE and FireFox is as follows:

IE6.0, FF1.06:

clientWidth = width padding

clientHeight = height padding

offsetWidth = width padding border

offsetHeight = height padding border

IE5.0/5.5:
clientWidth = width - border

clientHeight = height - border

offsetWidth = width

offsetHeight = height

(It needs to be mentioned: the margin attribute in CSS is the same as clientWidth, offsetWidth, clientHeight, and offsetHeight) Not relevant)

-------------------

Technical points
The code in this section is mainly used The Document object has some properties about the window. The main functions and usage of these properties are as follows.

To get the size of the window, different properties and methods need to be used for different browsers: to detect the real size of the window, you need to use the properties of the Window under Netscape; you need to go deep into the Document under IE Detect the body; in the DOM environment, if you want to get the size of the window, you need to pay attention to the size of the root element, not the element.

The innerWidth property of the Window object contains the inner width of the current window. The innerHeight property of the Window object contains the inner height of the current window.

The body attribute of the Document object corresponds to the tag of the HTML document. The documentElement property of the Document object represents the root node of the HTML document.

document.body.clientHeight represents the current height of the window where the HTML document is located. document.body.clientWidth represents the current width of the window where the HTML document is located.

Implementation code

Copy code The code is as follows:

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional .dtd">


Please resize the browser window< ;/title> <br><meta http-equiv="content-type" content="text/html; charset=gb2312"> <br></head> <br><body> <br> <h2 align="center">Please resize the browser window</h2><hr> <br><form action="#" method="get" name="form1" id="form1 "> <br><!–Shows the actual size of the browser window–> <br>The actual height of the browser window: <input type="text" name="availHeight" size="4"> <br> <br>The actual width of the browser window: <input type="text" name="availWidth" size="4"><br> <br></form> <br>< ;script type="text/javascript"> <br><!– <BR>var winWidth = 0; <BR>var winHeight = 0; <BR>function findDimensions() //Function: Get dimensions<BR> { <BR>//Get window width<BR>if (window.innerWidth) <BR>winWidth = window.innerWidth; <BR>else if ((document.body) && (document.body.clientWidth)) <BR> winWidth = document.body.clientWidth; <BR>//Get window height<BR>if (window.innerHeight) <BR>winHeight = window.innerHeight; <BR>else if ((document.body) && (document.body .clientHeight)) <BR>winHeight = document.body.clientHeight; <BR>//Detect the body by going deep inside the Document and get the window size<BR>if (document.documentElement && document.documentElement.clientHeight && document.documentElement .clientWidth) <BR>{ <BR>winHeight = document.documentElement.clientHeight; <BR>winWidth = document.documentElement.clientWidth; <BR>} <BR>//The results are output to two text boxes <BR>document. form1.availHeight.value= winHeight; <BR>document.form1.availWidth.value= winWidth; <BR>} <BR>findDimensions(); <BR>//Call the function to get the value<BR>window.onresize=findDimensions ; <BR>//–> <br></script> <br></body> <br></html> <br> </div> <br><strong>Source program interpretation</strong> <br><br> (1) The program first creates a form containing two text boxes to display the current width and height of the window, and their values ​​will change as the window size changes. <br><br> (2) In the subsequent JavaScript code, two variables winWidth and winHeight are first defined to save the height and width values ​​of the window. <br><br>(3) Then, in the function findDimensions (), use window.innerHeight and window.innerWidth to get the height and width of the window, and save them in the two aforementioned variables. <br><br> (4) Then detect the body by going deep into the Document, obtain the window size, and store it in the two variables mentioned above. <br><br>(5) At the end of the function, by accessing the form elements by name, the results are output to two text boxes. <br><br> (6) At the end of the JavaScript code, complete the entire operation by calling the findDimensions () function.</div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>Statement:</span><div>The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn</div></div></div><div class="nphpSytBox"><span>Previous article:<a class="dBlack" title="Example js code for value transfer between subform and parent form_javascript skills" href="http://m.php.cn/faq/16619.html">Example js code for value transfer between subform and parent form_javascript skills</a></span><span>Next article:<a class="dBlack" title="Example js code for value transfer between subform and parent form_javascript skills" href="http://m.php.cn/faq/16621.html">Example js code for value transfer between subform and parent form_javascript skills</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>Related articles</h2><em><a href="http://m.php.cn/article.html" class="bBlack"><i>See more</i><b></b></a></em><div class="clear"></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="fluid" data-ad-layout-key="-6t+ed+2i-1n-4w" data-ad-client="ca-pub-5902227090019525" data-ad-slot="8966999616"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><ul class="nphpXgwzList"><li><b></b><a href="http://m.php.cn/faq/1609.html" title="An in-depth analysis of the Bootstrap list group component" class="aBlack">An in-depth analysis of the Bootstrap list group component</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/faq/1640.html" title="Detailed explanation of JavaScript function currying" class="aBlack">Detailed explanation of JavaScript function currying</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/faq/1949.html" title="Complete example of JS password generation and strength detection (with demo source code download)" class="aBlack">Complete example of JS password generation and strength detection (with demo source code download)</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/faq/2248.html" title="Angularjs integrates WeChat UI (weui)" class="aBlack">Angularjs integrates WeChat UI (weui)</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/faq/2351.html" title="How to quickly switch between Traditional Chinese and Simplified Chinese with JavaScript and the trick for websites to support switching between Simplified and Traditional Chinese_javascript skills" class="aBlack">How to quickly switch between Traditional Chinese and Simplified Chinese with JavaScript and the trick for websites to support switching between Simplified and Traditional Chinese_javascript skills</a><div class="clear"></div></li></ul></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5902227090019525" data-ad-slot="5027754603"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><footer><div class="footer"><div class="footertop"><img src="/static/imghwm/logo.png" alt=""><p>Public welfare online PHP training,Help PHP learners grow quickly!</p></div><div class="footermid"><a href="http://m.php.cn/about/us.html">About us</a><a href="http://m.php.cn/about/disclaimer.html">Disclaimer</a><a href="http://m.php.cn/update/article_0_1.html">Sitemap</a></div><div class="footerbottom"><p> © php.cn All rights reserved </p></div></div></footer><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body></html>