• Zclip点击复制内容到剪贴板兼容各浏览器


    WEB开发中,要让用户复制页面中的一段代码、URL地址等信息,为了避免用户拖动鼠标再进行右键复制操作而可能出现的差错,我们可以直接在页面中放置一个复制按钮,只需要轻轻一点这个复制按钮,内容将会被复制,然后用户可以粘贴到想粘贴的地方。

    本文将结合实例讲解如何使用一款基于jQuery的插件——Zclip来实现复制内容到剪贴板的功能。其实IE上有个方法可以实现点击复制,但是由于只是IE独有,所以我们不提倡。而Zclip是利用一个隐藏的flash文件来完成复制的功能,关键是它兼容当前各主流浏览器

    HTML

    首先需要在页面中载入jquery库和zclip插件,这两个文件已经打好包,欢迎点击下载。

    1. <script type="text/javascript" src="js/jquery.js"></script> 
    2. <script type="text/javascript" src="js/jquery.zclip.min.js"></script> 

    接着我们在页面中的body部分加入如下代码:

    1. <textarea id="mytext">请输入内容</textarea><br/> 
    2. <a href="#" id="copy_input" class="copy">复制内容</a> 

    页面中放置了一个输入框textarea,当然也可以是其他html元素,然后就是一个复制按钮,也可以是链接文本形式。

    Javascript

    当点击“复制内容”时,调用zclip插件,并提示复制成功,请看代码:

    1. $(function(){ 
    2.     $('#copy_input').zclip({ 
    3.         path: 'js/ZeroClipboard.swf', 
    4.         copy: function(){//复制内容 
    5.             return $('#mytext').val(); 
    6.         }, 
    7.         afterCopy: function(){//复制成功 
    8.             $("<span id='msg'/>").insertAfter($('#copy_input')).text('复制成功'); 
    9.         } 
    10.     }); 
    11. }); 

    值得注意的是如果是复制的内容来自输入框input、textarea等,copy对象使用:

    1. copy: function(){ 
    2.     return $('#mytext').val(); 
    3. } 

    如果是复制的内容来自页面元素div、p之类的,copy对象使用:

    1. copy: $('#mytext').text(); 

    这样就完成了复制内容到剪贴板的功能。

    参数说明

    path:swf调用路径,必须,如js/ZeroClipboard.swf,ZeroClipboard.swf文件已存在下载包中。

    copy:复制的内容,必须,任意字符串,也可以是回调函数返回的内容

    beforeCopy:复制内容前回调函数,可选

    afterCopy:复制内容后回调函数,可选

  • 相关阅读:
    MyBatis使用
    华为如何实现基于Git的跨地域协同开发
    推荐一款华为最新的自动化代码检查工具
    我是如何进行code review的
    谈谈敏捷开发
    软件测试管理的一点小心得
    (转)技术转管理可能遇到的 3 大挑战及解决方案
    领域驱动设计和实践
    NET开源项目
    asp.net搭建mybatis开发环境
  • 原文地址:https://www.cnblogs.com/qq350760546/p/5460787.html
Copyright © 2020-2023  润新知