This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The HTMLElement.onpaste
property of the HTMLElement
interface is an EventHandler
that processes paste
events.
The paste
event fires when the user attempts to paste text.
Note that there is currently no DOM-only way to obtain the text being pasted; you'll have to use an nsIClipboard
to get that information.
Syntax
target.onpaste = functionRef;
Value
functionRef
is a function name or a function expression. The function receives a ClipboardEvent
object as its sole argument.
Example
This example logs every copy and paste attempt to the <textarea>
.
HTML
<h3>Play with this text area:</h3> <textarea id="editor" rows="3">Try copying and pasting text into this field!</textarea> <h3>Log:</h3> <p id="log"></p>
JavaScript
function logCopy(event) { log.innerText = 'Copied!\n' + log.innerText; } function logPaste(event) { log.innerText = 'Pasted!\n' + log.innerText; } const editor = document.getElementById('editor'); const log = document.getElementById('log'); editor.oncopy = logCopy; editor.onpaste = logPaste;
Result
Specification
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
onpaste | Chrome Full support 71 | Edge Full support 12 | Firefox Full support 3 | IE ? | Opera Full support Yes | Safari Full support Yes | WebView Android Full support 71 | Chrome Android Full support 71 | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support 10.0 |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Non-standard. Expect poor cross-browser support.
- Non-standard. Expect poor cross-browser support.
Since Firefox 13, the preference dom.event.clipboardevents.enabled
controls this feature. It defaults to true
but can be disabled.
See also
- Clipboard API event
paste
- Related event handlers