HTML precise positioning attributes: scrollLeft, scrollWidth, clientWidth, offsetWidth
scrollHeight: Gets the scroll height of the object.
scrollLeft: Set or get the distance between the left boundary of the object and the leftmost end of the currently visible content in the window
scrollTop: Set or get the distance between the top of the object and the top of the visible content in the window
scrollWidth: Get the scroll width of the object
offsetHeight: Gets the height of the object relative to the layout or the parent coordinate specified by the parent coordinate offsetParent property
offsetLeft: Gets the calculated left position of the object relative to the layout or parent coordinates specified by the offsetParent property
offsetTop: Gets the calculated top position of the object relative to the layout or the parent coordinate specified by the offsetTop property
event.clientX horizontal coordinates relative to the document
event.clientY vertical coordinates relative to the document
event.offsetX horizontal coordinates relative to container
event.offsetY vertical coordinates relative to container
document.documentElement.scrollTop The value of scrolling vertically
event.clientX+document.documentElement.scrollTop relative to the horizontal coordinate of the document + the amount of scrolling in the vertical direction
IE, FireFox differences are as follows:
IE6.0, FF1.06+:
Copy the code as follows: 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
Tip: The margin attribute in CSS has nothing to do with clientWidth, offsetWidth, clientHeight, and offsetHeight
The visible area width of the web page: document.body.clientWidth
The visible area height of the web page: document.body.clientHeight
The visible area width of the web page: document.body.offsetWidth (including the width of the edge line)
The visible area height of the web page: document.body.offsetHeight (including the height of the edge line)
Full text width of the web page: document.body.scrollWidth
Full text of the web page: document.body.scrollHeight
The web page is rolled out at a high level: document.body.scrollTop
The left of the web page being rolled out: document.body.scrollLeft
On the main part of the web page: window.screenTop
Left of the main text of the web page: window.screenLeft
High screen resolution: window.screen.height
Width of screen resolution: window.screen.width
Screen Available Workspace Height: window.screen.availHeight
Screen Available Workspace Width: window.screen.availWidth
Technical Highlights
The code in this section mainly uses some properties of the Document object about the window. The main functions and usage of these properties are as follows.
To get the window size, different properties and methods need to be used for different browsers: to detect the true size of the window, you need to use the Window attributes under Netscape; to detect the body in IE; to get the window size, you need to pay attention to the size of the root element, not the element.
The innerWidth property of the Window object contains the internal width of the current window. The innerHeight property of the Window object contains the internal 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 resides.
Sample code
The code copy is as follows:
<!DOCTYPE>
<html>
<head>
<title>
Please adjust the browser window
</title>
<meta charset="utf8">
</head>
<body>
<h2 align="center">
Please adjust the browser window size
</h2>
<hr>
<form action="#" method="get" name="form1" id="form1">
<!--Show the actual size of the browser window-->
The actual height of the browser window:
<input type="text" name="availHeight" size="4">
<br>
The actual width of the browser window:
<input type="text" name="availWidth" size="4">
<br>
</form>
<script type="text/javascript">
< !--
var winWidth = 0;
var winHeight = 0;
function findDimensions() //Function: Get the dimensions
{
//Get window width
if (window.innerWidth) winWidth = window.innerWidth;
else if ((document.body) && (document.body.clientWidth)) winWidth = document.body.clientWidth;
//Get window height
if (window.innerHeight) winHeight = window.innerHeight;
else if ((document.body) && (document.body.clientHeight)) winHeight = document.body.clientHeight;
//Click the window size by detecting the body deep inside the Document to obtain the body size
if (document.documentElement && document.documentElement.clientHeight && document.documentElement.clientWidth) {
winHeight = document.documentElement.clientHeight;
winWidth = document.documentElement.clientWidth;
}
//The result is output to two text boxes
document.form1.availHeight.value = winHeight;
document.form1.availWidth.value = winWidth;
}
findDimensions();
//Calling the function to get the value
window.onresize = findDimensions;
//-->
</script>
</body>
</html>
Source program interpretation
(1) The program first creates a form containing two text boxes to display the current width and height of the window, and its value will change with the change of the window size.
(2) In the subsequent JavaScript code, two variables winWidth and winHeight are first defined to save the height and width values of the window.
(3) Then, in the function findDimensions ( ), use window.innerHeight and window.innerWidth to get the height and width of the window, and save both in the above two variables.
(4) Then, by going deep into the Document, detecting the body, obtaining the window size, and storing it in the above two variables.
(5) At the end of the function, the result is output to two text boxes by accessing the form element by name.
(6) At the end of the JavaScript code, complete the entire operation by calling the findDimensions ( ) function.