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
- 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
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
onscroll | Chrome Full support Yes | Edge Full support ≤18 | 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 Full support Yes |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown