来源: (我们的JavaScript) http://www.ourjs.cn 原文链接: http://www.ourjs.cn/show.php?id=737 如需转载请保留来源.
web开发中常常要实现“复制到剪切板”功能。这个功能很实用,但是由于安全问题,浏览器的限制越来越严,实现的方法也越来越有限了。Firefox默认下不能直接通过Javascript操作剪切板,必须开启相关的设置才行。想只通过Javascript技术实现跨浏览器的剪切板是行不通的。现在常用的方法是利用JavaScript+Flash实现,普遍流传的办法是_clipboard.swf,这是国外最早实现的(著名的Clipboard Copy解决方案: http://www.jeffothy.com/weblog/clipboard-copy/)。但是很可惜,_clipboard.swf在新出来的flash10中无效,因为flash10中规定了只有在swf上进行了实际的操作(比如鼠标点击)才能启动剪切板。而_clipboard.swf方法的swf是隐藏的,通过JavaScript来操作flash的剪切板,显然没有对swf进行实际的用户操作。
针对这个,最近国外出现了一种新的方法,而且专门做了一个JavaScript库 Zero Clipboard ,它包含一个flash影片和一个JavaScript接口,这个flash是透明的(不是隐藏),用户不会察觉到它的存在。这个flash覆盖在一个DOM元素上,比如button,div之类,当点击这个DOM时,你实际点击的是这个flash,这个作用在flash上的动作能够开启flash的剪切板。这实际上就是一种clickjacking。
DEMO页面 : http://bowser.macminicolo.net/~jhuckaby/zeroclipboard/
Zero Clipboard项目主页: http://code.google.com/p/zeroclipboard/
相关资料:
Jeffothy的Clipboard Copy解决方案
Flash 10 will not support unsolicited clipboard access from Flash and JavaScript
clickjacking trick to cover an element with a transparent element that provides another functionality
http://www.ourjs.cn/show.php?id=737
来源: (我们的JavaScript) http://www.ourjs.cn
原文链接: http://www.ourjs.cn/show.php?id=737
如需转载请保留来源.
分享到:
相关推荐
标题"Zero Clipboard 利用 Flash 进行复制 跨浏览器兼容"指出,这是一个关于使用Zero Clipboard库实现跨浏览器的文本复制功能的技术。Zero Clipboard是一款开源JavaScript库,它通过利用Flash技术来解决浏览器之间的...
如果你正在开发一个桌面应用,可以直接使用上述C#代码实现复制图片到剪切板的功能。 此外,为了确保代码的健壮性和兼容性,你应该处理可能出现的异常,比如图片加载失败或剪切板操作权限问题。在实际开发中,你还...
在本文中,我们将深入探讨如何实现"js clipboard 复制文字到剪切板功能",并确保其在各种浏览器中的兼容性。 ### 1. 剪切板API的发展 早期的JavaScript并没有提供直接操作剪切板的API,开发者通常使用`document....
Zero Clipboard是一款JavaScript库,它允许开发者通过网页上的按钮或元素将文本复制到用户的系统剪贴板上,从而实现了跨浏览器的复制功能。这个工具特别适合在网页上提供一键复制内容的服务,如复制代码片段、链接...
**Zero Clipboard** 是一个开源JavaScript库,用于在用户点击网页上的特定元素时,实现跨浏览器的复制文本到剪贴板的功能。这个库尤其方便,因为它兼容多种浏览器,包括Internet Explorer、Chrome和Mozilla Firefox...
ios+android+h5复制剪切板
在本文中,我们将深入探讨如何在Qt Quick QML中创建和操作图表,并实现将图表内容复制到剪切板的功能。QML(Qt Quick Markup Language)是Qt框架的一部分,用于构建用户界面,它允许开发者以声明式的方式定义UI元素...
摘要:脚本资源,Ajax/JavaScript,剪切板 Zero Clipboard,一个比较成熟的跨浏览器兼容的“复制到剪切板”功能库,JavaScript功能Flash共同实现的功能库,兼容众多主流浏览器。
在JavaScript中,复制到剪切板的操作涉及到浏览器的API,特别是`Clipboard API`。早期的实现依赖于`document.execCommand()`方法,但这个方法已经被废弃,并不推荐使用。现代浏览器通常支持`Clipboard API`,它提供...
总之,要解决“单击按钮复制到剪切板”的兼容性问题,开发者需要理解不同浏览器对剪切板API的支持情况,合理运用Flash和`Clipboard API`,并编写适当的JavaScript代码来处理这两种技术的切换。这样,无论用户使用的...
`clipboard.js`是一个轻量级的库,它的主要作用是简化了浏览器的剪贴板API使用,使得开发者可以轻松地将指定的文本内容复制到用户的剪贴板中。这个库的核心思想是利用`DataTransfer`对象和`execCommand`命令来实现跨...
"FLASH+JS复制文字到剪切板"是一种常见的实现方式,尤其是在JavaScript原生API(如`document.execCommand('copy')`)在某些浏览器中不支持或者存在兼容性问题时。本篇将详细介绍这种技术的原理和应用。 **Flash的...
HTML复制到剪切板的功能是网页交互中常见的一种操作,特别是在分享代码、文本信息或者网址时。这个功能的实现通常涉及到浏览器的API和一些前端库的使用。在本例中,我们提到了`clipboard.js`,这是一个轻量级的库,...
在QML中,剪贴板(Clipboard)是一个用于在应用程序之间交换数据的工具。它可以用来复制、剪切和粘贴文本、图像等信息。在QML中,我们使用`QtQuick.Controls`模块中的`Clipboard`对象来访问和操作剪贴板。这个功能...
Vue 复制到粘贴板组件 vue-clipboard2 是一个基于 Vue.js 的剪切板组件,允许开发者在应用程序中轻松地复制内容到剪切板中。该组件提供了简洁的 API,易于使用和集成。 安装 要使用 vue-clipboard2,需要首先安装...
第一种 # -*- coding: utf-8 -*- # @Time : 2020/3/16 21:26 # @File : get_text_from_cupboard_13.py # @Author: Hero Liu # python读取剪切板内容 import win32clipboard as w import win32con def get_text(): ...
当涉及到剪切板与网页的交互时,现代浏览器支持一种名为Web Clipboard API的技术。这个API允许网页应用在用户许可的情况下读写剪切板内容,提高了用户体验,但考虑到隐私和安全,它的使用必须谨慎。 总结来说,剪切...
它的工作原理就像是一个临时存储区,用户可以将文本、图像或者其他类型的数据复制到剪切板,然后在其他地方粘贴出来。在这个主题中,我们将深入探讨C++/MFC(Microsoft Foundation Classes)框架下如何使用剪切板...
一个提供复制到剪贴板功能的React Hook。 安装 您可以react-use-clipboard NPM或Yarn安装react-use-clipboard 。 npm install react-use-clipboard --save-exact yarn add react-use-clipboard --exact 我们鼓励...
Nuxt.js 的“复制到剪贴板”模块,使用 :recycling_symbol: 设置 使用 yarn 或 npm 将nuxt-clipboard依赖项添加到您的项目中 添加nuxt-clipboard到modules的部分nuxt.config.js export default { modules : [ /...