Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F97654334
offset.js
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Mon, Jan 6, 02:36
Size
876 B
Mime Type
text/x-java
Expires
Wed, Jan 8, 02:36 (10 h, 7 m)
Engine
blob
Format
Raw Data
Handle
23442109
Attached To
rOACCT Open Access Compliance Check Tool (OACCT)
offset.js
View Options
import
contains
from
'./contains'
;
import
ownerDocument
from
'./ownerDocument'
;
import
scrollLeft
from
'./scrollLeft'
;
import
scrollTop
from
'./scrollTop'
;
/**
* Returns the offset of a given element, including top and left positions, width and height.
*
* @param node the element
*/
export
default
function
offset
(
node
)
{
var
doc
=
ownerDocument
(
node
);
var
box
=
{
top
:
0
,
left
:
0
,
height
:
0
,
width
:
0
};
var
docElem
=
doc
&&
doc
.
documentElement
;
// Make sure it's not a disconnected DOM node
if
(
!
docElem
||
!
contains
(
docElem
,
node
))
return
box
;
if
(
node
.
getBoundingClientRect
!==
undefined
)
box
=
node
.
getBoundingClientRect
();
box
=
{
top
:
box
.
top
+
scrollTop
(
docElem
)
-
(
docElem
.
clientTop
||
0
),
left
:
box
.
left
+
scrollLeft
(
docElem
)
-
(
docElem
.
clientLeft
||
0
),
width
:
box
.
width
,
height
:
box
.
height
};
return
box
;
}
Event Timeline
Log In to Comment