JavaScript剪贴板事件onpaste|向元素中粘贴文本时触发

事件对象参考手册


定义与用法

onpaste 事件在用户向元素中粘贴文本时触发。

虽然使用的 HTML 元素都支持 onpaste 事件,但实际上并非支持所有元素,例如 <p> 元素, 除非设置了 contenteditable 为 “true” (查看下文的更多实例)。

onpaste 事件通常用于 type=”text” 的 <input> 元素。

提示: 有三种方式可以在元素中粘贴内容:

  • 按下 CTRL + V
  • 从浏览器的编辑菜单中选择 “Paste(粘贴)”
  • 右击鼠标按钮在上下文菜单中选择 “Paste(粘贴)” 命令。

语法格式

HTML 中:

< element onpaste=” myScript”>

JavaScript 中:

object.onpaste=function(){ myScript};

JavaScript 中, 使用 addEventListener() 方法:

object.addEventListener(“paste”, myScript);

注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。


示例代码

在 <input> 元素上粘贴文本时执行 JavaScript :

<input type="text" onpaste="myFunction()" value="尝试在此处粘贴文本">

亲自试试

<script>
document.getElementById("myInput").onpaste = function() {myFunction()};
function myFunction() {
    alert("你粘贴了文本!");
}
</script>

亲自试试

<script>
document.getElementById("myInput").addEventListener("paste", myFunction);
function myFunction() {
    alert("你粘贴了文本!");
}
</script>

亲自试试

本文底部可以查看更多实例。


浏览器支持

事件Google ChromeInternet ExplorerFirefoxSafariOpera
onpasteYesYesYesYesYes

技术细节

是否支持冒泡:Yes
是否可以取消:Yes
事件类型:ClipboardEvent
支持的 HTML 标签:所有 HTML 元素

更多示例

当向 <p> 元素上粘贴文本内容时执行 JavaScript (注意 contenteditable 设置为 “true”):

<p contenteditable="true" onpaste="myFunction()">尝试在段落中粘贴内容。</p>

亲自试试


相关页面

HTML DOM 参考手册: oncopy 事件

HTML DOM 参考手册: oncut 事件


事件对象参考手册


相关