angularjs-兼容各种浏览器的复制到剪切板功能的代码
来源:互联网 发布:16年双十一淘宝交易额 编辑:程序博客网 时间:2024/05/22 12:07
实现原理就是:动态生成隐藏文本域,把要复制的内容放到该文本域,然后依次执行DOM里的选中,复制功能就可以(有些代码是非相关的可以忽略)。注意,不要在非直接点击触发的函数里用document.execCommand('copy')的方法,因为浏览器的安全机制会禁止使用。另外可以加判断ta是否已经生成过,如果生成过,直接用就可以(
if(ta){return ta;})
方法代码:
copyJson(claimId) { var self = this; var copyClaimJsonUrl = this.urlUtils.getBackendApiUrl("claimDetail/copyClaimJson"); var model = ""; $.ajax({ type: "get", dataType: "json", data: {"claimId": claimId}, async:false, url: copyClaimJsonUrl, success: function (data) { if(data){ self.claimJson = JSON.stringify(data); } } }); var ta =this.createTempTextArea();//创建文本域 document.body.appendChild(ta); //后缀到DOM ta.value = this.claimJson; //赋值 ta.select(); //选中 var success =document.execCommand('copy');//复制 layer.msg("复制成功!");}
动态生成隐藏文本域的代码:
createTempTextArea = function () { var isRTL = document.documentElement.getAttribute('dir') === 'rtl';var ta; ta = document.createElement('textarea'); // Prevent zooming on iOS ta.style.fontSize = '12pt'; // Reset box model ta.style.border = '0'; ta.style.padding = '0'; ta.style.margin = '0'; // Move element out of screen horizontally ta.style.position = 'absolute'; ta.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically var /** @type {?} */ yPosition = window.pageYOffset || document.documentElement.scrollTop; ta.style.top = yPosition + 'px'; ta.setAttribute('readonly', ''); return ta;};
阅读全文
0 0
- angularjs-兼容各种浏览器的复制到剪切板功能的代码
- JQuery 兼容所有浏览器的复制到剪切板功能
- 兼容所有浏览器的复制到剪切板功能,悬浮层不能复制问题解决
- 兼容所有浏览器的复制到剪切板功能,悬浮层不能复制问题解决
- js实现复制到剪切板功能,兼容所有浏览器
- zclip ZeroClipboard 兼容各种浏览器的复制功能
- js 实现复制到剪切板的功能
- JavaScript+Html5实现按钮的复制文字到剪切板功能,手机网页兼容
- Zero Clipboard - 跨浏览器兼容的“复制到剪贴板”功能
- js粘贴复制, js动态复制到剪切板,兼容浏览器
- js实现复制到剪切板,兼容所有浏览器
- JS复制到剪切板(兼容主流所有浏览器)
- js 完美兼容浏览器的复制功能
- 复制到剪切板功能
- 支持所有浏览器的复制文本到剪切板的ASP代码(IE/Firefox/Opera/netscape/chrome/safari)
- ZeroClipboard实现多个浏览器兼容的复制文本到剪贴板的功能
- 兼容所有浏览器的JQuery zClip插件实现复制到剪贴板功能
- 兼容所有浏览器的JQuery zClip插件实现复制到剪贴板功能
- 端口占用
- vue开发:Vue 非父子组件通信方法(非Vuex)
- 【POJ3211】 Washing Clothes
- react native 环境搭建
- ASP以及web开发命名规则参考与书写规范
- angularjs-兼容各种浏览器的复制到剪切板功能的代码
- Tp5命名空间及路由笔记
- C#中Action、Func、Tuple的使用
- 张五常的学习方法为什么好?因为符合人类的认知原理
- etcd使用简介
- 算法题目---顺时针打印矩阵
- Android & iOS 开发全面对比分析
- 1293 球与切换器(dp)
- Kotlin-Kotlin中调用Java