The onscroll
property of the GlobalEventHandlers
mixin is an EventHandler
that processes scroll
events.
The scroll
event fires when the document view or an element has been scrolled, whether by the user, a Web API, or the user agent.
Note: Don't confuse onscroll
with onwheel
: onwheel
handles general wheel rotation, while onscroll
handles scrolling of an object's content.
Syntax
target.onscroll = functionRef;
Value
functionRef
is a function name or a function expression. The function receives a UIEvent
object as its sole argument.
Only one onscroll
handler can be assigned to an object at a time. For greater flexibility, you can pass a scroll
event to the EventTarget.addEventListener()
method instead.
Example
This example monitors scrolling on a <textarea>
, and logs the element's vertical scroll position accordingly.
HTML
<textarea>1 2 3 4 5 6 7 8 9</textarea> <p id="log"></p>
CSS
textarea { width: 4rem; height: 8rem; font-size: 3rem; }
JavaScript
const textarea = document.querySelector('textarea'); const log = document.getElementById('log'); textarea.onscroll = logScroll; function logScroll(e) { log.textContent = `Scroll position: ${e.target.scrollTop}`; }
Result
Specifications
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of 'onscroll' in that specification. |
Living Standard | |
Document Object Model (DOM) Level 3 Events Specification The definition of 'onscroll' in that specification. |
Obsolete | Initial definition |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
onscroll | Chrome Full support Yes | Edge Full support Yes | Firefox Full support Yes | IE ? | Opera ? | Safari ? | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support Yes | Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown