The Element.getBoundingClientRect[]
method returns a`DOMRect` object providing information about the size of an element and its position relative to the viewport.
None.
The returned value is a DOMRect
object which is the smallest rectangle which contains the entire element, including its padding and border-width. The`left`, top
,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
0,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
1,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
2,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
3,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4, and
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 properties describe the position and size of the overall rectangle in pixels. Properties other than
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4 and
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 are relative to the top-left of the viewport.
The
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4 and
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 properties of the DOMRect
object returned by the method include the
1 and
2, not only the content width/height. In the standard box model, this would be equal to the
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4 or
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 property of the element +
1 +
2. But if
7 is set for the element this would be directly equal to its
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4 or
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5.
The returned value can be thought of as the union of the rectangles returned by
div
# example {
width: 400px;
height: 200px;
padding: 20px;
margin: 50px auto;
background: purple;
}
body {
padding-bottom: 1000px;
}
p {
margin: 0;
}
0 for the element, i.e., the CSS border-boxes associated with the element.
Empty border-boxes are completely ignored. If all the element's border-boxes are empty, then a rectangle is returned with a
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4 and
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 of zero and where the top
and left
are the top-left of the border-box for the first CSS box [in content order] for the element.
The amount of scrolling that has been done of the viewport area [or any other scrollable element] is taken into account when computing the bounding rectangle. This means that the rectangle's boundary edges [top
,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
0,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
1, left
] change their values every time the scrolling position changes [because their values are relative to the viewport and not absolute].
If you need the bounding rectangle relative to the top-left corner of the document, just add the current scrolling position to the top
and left
properties [these can be obtained using
function update[] {
const container = document.getElementById["controls"];
const elem = document.getElementById["example"];
const rect = elem.getBoundingClientRect[];
container.innerHTML = "";
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
container.appendChild[para];
}
}
}
document.addEventListener["scroll", update];
update[];
1 and
function update[] {
const container = document.getElementById["controls"];
const elem = document.getElementById["example"];
const rect = elem.getBoundingClientRect[];
container.innerHTML = "";
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
container.appendChild[para];
}
}
}
document.addEventListener["scroll", update];
update[];
- to get a bounding rectangle which is independent from the current scrolling position.
This simple example retrieves the DOMRect
object representing the bounding client rect of a simple
function update[] {
const container = document.getElementById["controls"];
const elem = document.getElementById["example"];
const rect = elem.getBoundingClientRect[];
container.innerHTML = "";
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
container.appendChild[para];
}
}
}
document.addEventListener["scroll", update];
update[];
4 element, and prints out its properties below it.
div {
width: 400px;
height: 200px;
padding: 20px;
margin: 50px auto;
background: purple;
}
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
Notice how the
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4/
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 are equal to its
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
4/
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
5 +
1.
Also note how the values of
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
2/left
,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
3/top
,
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
0, and
let elem = document.querySelector["div"];
let rect = elem.getBoundingClientRect[];
for [const key in rect] {
if [typeof rect[key] !== "function"] {
let para = document.createElement["p"];
para.textContent = `${key} : ${rect[key]}`;
document.body.appendChild[para];
}
}
1 are equal to the absolute distance from the relevant edge of the viewport to that side of the element, in each case.
How to get data from div using jQuery?
To get the value of div content in jQuery, use the text[] method. The text[] method gets the combined text contents of all matched elements. This method works for both on XML and XHTML documents.nullHow to get the value of div content using jQuery? - Tutorialspointwww.tutorialspoint.com › How-to-get-the-value-of-div-content-using-jQuerynull
How do you scroll to the top in jQuery?
In jQuery, the scrollTo[] method is used to set or return the vertical scrollbar position for a selected element. This behavior can be used to scroll to the top of the page by applying this method on the window property. Setting the position parameter to 0 scrolls the page to the top.nullScroll to the top of the page using JavaScript/jQuery - GeeksforGeekswww.geeksforgeeks.org › scroll-to-the-top-of-the-page-using-javascript-jq...null
How to get top of div in JavaScript?
Use the getBoundingClientRect Method We get the div with querySelector . Then we call getBoundingClientRect on it to get an object with the top and left properties. top has the position relative to the top of the viewport. left has the position relative to the left side of the viewport.nullHow to Get an Element's Top Position Relative to the Browser's Viewport?javascript.plainenglish.io › how-to-get-an-elements-top-position-relative-to...null
How do you calculate top height?
Example of Calculating Maximum Height Using Method A A projectile is launched with a velocity of 10 meters per second at an angle of thirty degrees above the horizontal. Calculate the maximum height of the projectile. Step 2: Use the equation h = v 0 y 2 2 g to calculate the maximum height of the projectile.nullUsing Multiple Methods to Calculate the Maximum Height of a Projectilestudy.com › skill › learn › using-multiple-methods-to-calculate-the-maxim...null