zoukankan      html  css  js  c++  java
  • javascript copy 复制

    在IE下,可以使用clipboardData

    Ie下copy代码  收藏代码
    1. <input type="button" name="anniu1" onClick='copyToClipBoard()' value="复制地址">   
    2. <script language="javascript">   
    3.    function copyToClipBoard(){   
    4.     var clipBoardContent="";   
    5.     clipBoardContent+=document.title;   
    6.     clipBoardContent+="";   
    7.     clipBoardContent+=this.location.href;   
    8.     window.clipboardData.setData("Text",clipBoardContent);   
    9.     alert("复制成功!");   
    10. }   

     但是在FireFox却不行,http://davidwalsh.name/clipboard 提供了一种万能方案,傅用的是flash技术,我的代码如下

    万能 copy代码  收藏代码
    1. $(document).ready(function(){  
    2.         ZeroClipboard.setMoviePath('js/ZeroClipboard.swf');  
    3.         //create client  
    4.         var clip = new ZeroClipboard.Client();  
    5.         //event  
    6.         clip.addEventListener('mousedown',function() {  
    7.             clip.setText($('#inviteLink').val());  
    8.         });  
    9.         clip.addEventListener('complete',function(client,text) {  
    10.             alert("生成的代码已经复制到粘贴板,你可以使用Ctrl+V 贴到需要的地方去了哦!");  
    11.         });  
    12.         clip.glue('copy');  
    13. });  

     copy为页面元素的id

    这样就可以了,在IE6,IE9, FireFox8.0, Chrome15.0.874.106, 可以正常运行

    注:Iteye就是用的这种方法^_^

    【增加】:

        flash技术使用的是事件机制,就是点击事件,它把点击区域与页面元素的区域重复,点击复制元素时,就触发flash的复制事件,

    Flash热点绑定到元素上代码  收藏代码
    1. var style = this.div.style;  
    2. style.position = 'absolute';  
    3. style.left = '' + box.left + 'px';  
    4. style.top = '' + box.top + 'px';  
    5. style.width = '' + box.width + 'px';  
    6. style.height = '' + box.height + 'px';  

     昨天使用了js进行动态加载内容,发现复制失效了,找了半天,终于发现是这个问题,我的解决方案是,动态加载内容后,重新绑定,这样就可以了

        增加:页面变化后,一般是通过Ajax改变了页面的内容,这时可以通过clip.reposition()重新绑定,也可能通过 clip.show(),这个方法也会调用clip.reposition();

        相关的文章:https://code.google.com/p/zeroclipboard/wiki/Instructions

  • 相关阅读:
    扁平化职能管理三部曲
    [转载]持续交付和DevOps的前世今生
    敏捷项目管理工具-百度效率云
    敏捷项目管理:基础知识与应用实务
    第8章 “敏捷+”创新创业模式
    第7章 "敏捷+"项目管理
    第6章 迭代循环与项目结束
    第5章 发布循环
    第4章 立项与项目启动
    Windows 2003 + IIS6.0 相关 401.1 或 401.2 等问题解决
  • 原文地址:https://www.cnblogs.com/lv_yantao/p/2587306.html
Copyright © 2011-2022 走看看