WEB开发网
开发学院网页设计JavaScript 兼容多种浏览器“复制到剪贴板”的解决方案 阅读

兼容多种浏览器“复制到剪贴板”的解决方案

 2010-09-14 13:42:27 来源:WEB开发网   
核心提示: 评论:这个方案是一个最流行的方法,著名的Clipboard Copy解决方案 利用一个clipboard.swf作为桥梁,兼容多种浏览器“复制到剪贴板”的解决方案(3),复制内容到剪贴板,原理是:创建一个隐藏的flash文件,实际点击的是flash,从而访问flash的剪贴板,同时给给fl

评论:这个方案是一个最流行的方法,著名的Clipboard Copy解决方案 利用一个clipboard.swf作为桥梁,复制内容到剪贴板。原理是:创建一个隐藏的flash文件,同时给给flash的变量FlashVars 赋值“clipboard=..”,通过这个赋值flash就会把复制的内容放到剪贴板。这个方法兼容IE、Firefox、Opera、chrome、 Safari,真可谓“万能”的解决方案。浏览器Flash的安装率非常高,这几乎是一个完美的解决方案。

clipboard.swf 的下载地址:http://watch-life.googlecode.com/files/clipboard.swf。

但是,世界上有完美的事么?这个方法只支持flash 9 ,不支持最新的flash 10。因为flash10中规定了只有在swf上进行了真实的操作(比如鼠标点击)才能访问剪切板,而上述方法只是使用了一个隐藏的swf文件,通过javascript操作flash的剪贴板,用户并没有对swf文件进行真实的操作,因此这个方法也就失效了。

那么如何解决这个“真实操作”的问题呢?可以使用一个JavaScript库:Zero Clipboard,利用这个js库可以支持利用flash 10 实现复制到剪贴板。这个方法原理是在一个透明的flash(对用户来说是不可见的)上覆盖一个dom元素比如button或div,当点击这个dom时,实际点击的是flash,从而访问flash的剪贴板。真够曲折的。:-)

具体的实现详见如下链接:

DEMO页面 :  http://bowser.macminicolo.net/~jhuckaby/zeroclipboard/

Zero Clipboard项目主页: http://code.google.com/p/zeroclipboard/

支持浏览器:Firefox1.5  firefox2.0  firefox3.0 IE5.5 IE6.0 IE 7.0 opera 8 opera 9 chorme 1.0 chorme 2.0 safari 3

上一页  1 2 3 

Tags:兼容 多种 浏览器

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接