zeroclipboard实现多浏览器复制到粘贴板功能

zeroclipboard实现多浏览器复制到粘贴板功能(单个复制按钮和多个复制按钮) 为了更好的用户体验,现在很多网站中文本框的内容只需要点击复制按钮这样就能把内容复制到粘贴板了;
出于兼容性的考虑,基本上都是通过zeroclipboard来实现.首先要下载zeroclipboard,解压后把ZeroClipboard.js和ZeroClipboard.swf、ZeroClipboard10.swf(“为了flash10”)放到项目中,可以通过ZeroClipboard.setMoviePath( ‘/ZeroClipboard.swf‘ )方法来加载swf;
下面是整理的代码(也是通过 网上查找整理的)
(单个复制按钮):
html:
<input type="text" value="text" id="copy_txt"/><a href="javascirpt:;" id="copy_btn">复制</a>
js:
<script language="JavaScript">
    ZeroClipboard.setMoviePath( ‘ZeroClipboard.swf‘ );  //和html不在同一目录需设置setMoviePath
    ZeroClipboard.setMoviePath( ‘ZeroClipboard10.swf‘ );
    var clip = new ZeroClipboard.Client();   //创建新的Zero Clipboard对象
    clip.setText( ‘‘ ); // will be set later on mouseDown   //清空剪贴板
    clip.setHandCursor( true );      //设置鼠标移到复制框时的形状
    clip.setCSSEffects( true );          //启用css
    clip.addEventListener( ‘complete‘, function(client, text) {     //复制完成后的监听事件
          alert("aa")      
          clip.hide();                                          // 复制一次后,hide()使复制按钮失效,防止重复计算使用次数
     } );
   clip.addEventListener( ‘mouseDown‘, function(client) {
          clip.setText( document.getElementById(‘copy_txt‘).value );
    } );
    clip.glue( ‘copy_btn‘ );
</script>
多个复制按钮:
<input type="text" value="text" id="copy_txt0"/><a href="javascirpt:;" id="copy_btn0" data=‘0‘ class="copyBtn">复制</a>
<input type="text" value="text" id="copy_txt1"/><a href="javascirpt:;" id="copy_btn1" data=‘1‘ class="copyBtn">复制</a>
<input type="text" value="text" id="copy_txt2"/><a href="javascirpt:;" id="copy_btn2" data=‘2‘ class="copyBtn">复制</a>
js:
<script language="JavaScript">
$(".copyBtn").each(function(i){
        var id = $(this).attr(‘data‘);
        var clip=null;
        clip = new ZeroClipboard.Client();
        ZeroClipboard.setMoviePath( ‘ZeroClipboard.swf‘ );  //和html不在同一目录需设置setMoviePath
        ZeroClipboard.setMoviePath( ‘ZeroClipboard10.swf‘ );
        clip.setHandCursor( true );
        clip.setText( $("#copy_txt"+id).val() );
        clip.addEventListener(‘complete‘, function (client, text) {
          alert( "恭喜复制成功" );
        });
        clip.glue( ‘copy_btn‘+id);
  });
</script>

附件下载

时间: 2024-12-19 17:10:24

zeroclipboard实现多浏览器复制到粘贴板功能的相关文章

js 实现复制到粘贴板功能

前言:js 或者 jquery 都可以实现的复制到粘贴板功能,有时还想要有换行等格式(同 textarea) demo <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

转JS--通过按钮直接把input或者textarea里的值复制到粘贴板里

document.activeElement属性为HTML 5中新增的document对象的一个属性,该属性用于返回光标所在元素.当光标未落在页面中任何元素内时,属性值返回body元素. setSelectionRange(start, end) 设置选中文本起始位置与结束位置 execCommand方法是执行一个对当前文档,当前选择或者给出范围的命令     点击按钮复制textarea文本框中内容 <script type="text/javascript"> func

使用ZeroClipboard解决跨浏览器复制到剪贴板的问题

Zero Clipboard的实现原理 Zero Clipboard 利用透明的Flash让其漂浮在复制按钮之上,这样其实点击的不是按钮而是 Flash ,这样将需要的内容传入Flash,再通过Flash的复制功能把传入的内容复制到剪贴板. Zero Clipboard的安装方法 首先需要下载 Zero Clipboard的压缩包,解压后把文件夹中两个文件:ZeroClipboard.js 和 ZeroClipboard.swf 放入到你的项目中. 然后把在你要使用复制功能的页面中引入Zero

点击图片直接把图片地址复制到粘贴板

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="robots" c

移动端复制到粘贴板

老大是写后台的,让我解决手机端复制到粘贴板的问题,我搞了半天说有兼容问题,不好解决,然后过了一会老大说我找到了一个解决办法,把链接发给我了,让我看一下,哎,搜索关键字很重要啊.下面附上代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="widt

javascript copy 复制到粘贴板的方法

1.如果只是实现一个复制的功能呢有一个比较简单的方案废话不说,直接上代码 (pc 推荐) <script type="text/javascript"> function copyUrl2() { var Url2 = document.getElementById("biao1"); Url2.select(); // 选择对象 document.execCommand("Copy"); // 执行浏览器复制命令 } </sc

js实现复制到粘贴板,兼容各浏览器

网上搜js实现复制粘贴的文章一大堆,但是没几个能用的.有的文章说Clipboard Copy解决,利用一个clipboard.swf作为桥梁,复制内容到剪贴板. 听说的是兼容IE.Firefox.Opera.chrome. Safari,但是必须浏览器支持Flash,考虑到Flash支持不是100%,所以我摒弃了这个方案. 说说我的实现,灵感来自优酷分享的复制,在此之上加以修改的.经测试,支持IE.Firefox.Opera.chrome.搜狗浏览器.360等主流浏览器,Safari是本身不支持

【C#学习笔记】文本复制到粘贴板

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication5 { public partial class Form1 :

Winform调用系统的剪切,复制,粘贴文件功能

// <summary> /// 复制或剪切文件至剪贴板(方法) /// </summary> /// <param name="files">需要添加到剪切板的文件路径数组</param> /// <param name="cut">是否剪切true为剪切,false为复制</param> public static void CopyToClipboard(string[] files, b