Web/API/HTMLelement/onpaste

From Get docs

This is an experimental technologyCheck 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

WHATWG Standard

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

onpaste

Non-standard'

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