oncopy 事件
oncopy 事件
实例
在复制 <input> 元素的文本时执行 JavaScript:
<input type="text" oncopy="myFunction()" value="Try to copy this text">
完整实例:
<!DOCTYPE html>
<html>
<body>
<input type="text" oncopy="myFunction()" value="尝试复制此文本">
<p id="demo"></p>
<script>
function myFunction() {
document.getElementById("demo").innerHTML = "你复制了文本!"
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
页面下方有更多 TIY 实例。
定义和用法
oncopy 事件在用户复制元素的内容时发生。
提示:当用户复制使用 <img> 元素创建的元素(例如图像)时,也会发生 oncopy 事件。
提示: oncopy 事件主要用于 type="text" 的 <input> 元素。
提示:以下是复制元素/元素内容的三种方式:
- CTRL + C
- 从浏览器的编辑菜单中选择复制
- 右键菜单中选择复制命令
浏览器支持
事件 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
oncopy | 支持 | 支持 | 支持 | 支持 | 支持 |
注释:尝试复制图像时,oncopy 事件在某些浏览器中可能无法按预期工作(请参阅下面的更多实例)。
语法
在 HTML 中:
<element oncopy="myScript">
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例演示如何将 "oncopy" 事件分配给输入元素。</p>
<input type="text" oncopy="myFunction()" value="尝试复制此文本">
<script>
function myFunction() {
alert("你复制了文本!");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
在 JavaScript 中:
object.oncopy = function(){myScript};
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例使用 HTML DOM 将 "oncopy" 事件分配给 input 元素。</p>
<input type="text" id="myInput" value="尝试复制此文本">
<script>
document.getElementById("myInput").oncopy = function() {myFunction()};
function myFunction() {
alert("你复制了文本!");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
在 JavaScript 中,使用 addEventListener() 方法:
object.addEventListener("copy", myScript);
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例使用 addEventListener() 方法将 "copy" 事件附加到 input 元素。</p>
<input type="text" id="myInput" value="尝试复制此文本">
<script>
document.getElementById("myInput").addEventListener("copy", myFunction);
function myFunction() {
alert("你复制了文本!");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法。
技术细节
冒泡: | 支持 |
---|---|
可取消: | 支持 |
事件类型: | ClipboardEvent |
支持的 HTML 标签: | 所有 HTML 元素 |
更多实例
示例代码:
当复制 <p> 元素的某些文本时执行 JavaScript:
<p oncopy="myFunction()">Try to copy this text</p>
完整实例:
<!DOCTYPE html>
<html>
<body>
<p oncopy="myFunction()">尝试复制此文本</p>
<script>
function myFunction() {
alert("你复制了文本!");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
示例代码:
复制图像时执行 JavaScript:
<img src="/skin/news/images/logo1.png" oncopy="myFunction()">
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>请尝试复制下面的图像。</p>
<img src="/skin/news/images/logo1.png" oncopy="myFunction()" width="490" height="150">
<p><b>注释:</b>此例在某些浏览器中可能无法按预期工作。</p>
<script>
function myFunction() {
alert("You copied image!");
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html