Mar*_*ine 12 jquery zeroclipboard
我只是无法得到这个东西.ZeroClipboard应该如何工作?为什么需要在复制的文本上移动flash元素?
我读过这篇文章:http://code.google.com/p/zeroclipboard/wiki/Instructions
有人可以为我提供一个简短的片段,当用户点击链接时,可以将变量中的文本复制到用户剪贴板.这甚至可能吗?我不在乎,如果它不适用于所有浏览器(例如IE6).
我正在使用jQuery.
您链接到的网页上提供的"最小示例"代码(http://code.google.com/p/zeroclipboard/wiki/Instructions#Minimal_Example)似乎就是您想要的.我在这里复制并改变它以演示将文本放入变量然后将该文本复制到剪贴板,因为这是你感兴趣的.注意,在现实生活中,你可能想要做的是clip.setText()在某个函数中调用该部分,因为您可能不知道,在首次加载页面时,您要复制哪个文本.
<html>
<body>
<script type="text/javascript" src="ZeroClipboard.js"></script>
<div id="d_clip_button" style="border:1px solid black; padding:20px;">Copy To Clipboard</div>
<script language="JavaScript">
var clip = new ZeroClipboard.Client();
var myTextToCopy = "Hi, this is the text to copy!";
clip.setText( myTextToCopy );
clip.glue( 'd_clip_button' );
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
flash元素不需要"复制文本"; 它需要"粘合"到您希望用户操作的任何DOM元素 - 很可能是一个单击按钮.原因是Javascript无法访问剪贴板,因此您需要使用Flash.但Flash只能在用户的机器上操作以响应用户的点击 - 因此您可以"欺骗"用户点击Flash,使其成为HTML元素上的隐形覆盖.
我会注意到虽然复制到用户剪贴板的特定示例可能是良性的,但这种方法让我很烦恼,因为不难想象隐藏的flash元素会做更多恶意的事情.