ZeroClipboard,竟然无法在Google Chrome浏览器中使用

简介: ZeroClipboard,竟然无法在Google Chrome浏览器中使用

事情是非常让人不爽的,本来看起来挺简单的ZeroClipboard,我怎么就是搞不定。折腾了将近一下午的时间,发现同样的代码在Firefox浏览器上运行ZeroClipboard就是正常的,而Google Chrome浏览器却无法实现copy的功能!


让我先抱怨两句吧,在GitHub上找了各种版本的ZeroClipboard,也在百度上搜了各种解决办法,发现人家的例子都在Firefox浏览器上运行正常,而我的程序在Google Chrome浏览器上怎么都没有复制粘贴的效果。人都要气炸了,最后才后知后觉的发现是浏览器兼容的问题——那既然事实这样的凄惨,为什么网络上其他的资源都说ZeroClipboard是跨浏览器的,它解决了复制粘贴在浏览器各种版本不兼容的问题?


当然了,既然能在Firefox浏览器上实现复制粘贴,还是需要把这个方案介绍给需要的方案,接下来就是如何在Google Chrome浏览器上安装Adobe flash的插件。


一、Firefox上的实现效果


image.png

image.png






二、实现方式


在GitHub上下载 ZeroClipboard https://github.com/zeroclipboard/zeroclipboard.


放在工作目录中如下图:


image.png


注意:ZeroClipboard.swf和ZeroClipboard.js在一个路径下。


在页面中引入ZeroClipboard.js。


<script type="text/javascript" src="${ctx}/components/zeroclipboard/ZeroClipboard.js"></script>


同时放上一个按钮。


<button class="btn btn-block btn-primary btn-flat clipboard" data-clipboard-text="${encode_shareUrl}">点击复制二维码地址</button>


注意:data-clipboard-text属性赋值后,ZeroClipboard在复制的时候会选择该值放在粘贴板中。


页面加载完毕时初始化复制的按钮。


<script type="text/javascript">
<!--
    $(function() {
        $("button.clipboard", $p).each(function() {
        var $this = $(this);
        var clip = new ZeroClipboard($this);
        clip.on('error', function(event) {
            $this.hide().before(event.message);
            ZeroClipboard.destroy();
        });
    });
    });
//-->
</script>


最好,加上判断error的监听,这样防止浏览器不支持的时候没有提示。


相关文章
|
8天前
|
Web App开发 安全 前端开发
一个接口4个步骤轻松搞定最新版Chrome、Edge、Firefox浏览器集成ActiveX控件
目前的浏览器市场,谷歌浏览器占据了半壁江山,因此,谷歌也是最有话语权的,2015年开始取消支持 NPAPI 插件,2022 年10月停止支持 PPAPI 插件;而曾经老大哥IE浏览器也已停止服务,退出历史舞台,导致大量曾经安全、便捷的ActiveX控件无法使用。为了解决这个难题,本人特研发出allWebPlugin中间件,重新让所有ActiveX控件能在谷歌、火狐等浏览器使用。
|
10天前
|
Web App开发 数据采集 JavaScript
Chrome浏览器实例的TypeScript自动化脚本
Chrome浏览器实例的TypeScript自动化脚本
|
2月前
|
Web App开发 缓存 安全
WIN11 Chrome 双击打不开闪退及Chrome浏览器不能拖拽文件crx
【11月更文挑战第6天】本文介绍了 WIN11 系统中 Chrome 浏览器双击打不开闪退及不能拖拽文件 crx 的原因和解决方法。包括浏览器版本过旧、扩展程序冲突、硬件加速问题、缓存过多、安全软件冲突、系统文件损坏、用户配置文件损坏等问题的解决方案,以及 crx 文件的屏蔽、权限问题和文件格式问题的处理方法。
212 2
|
2月前
|
Web App开发 Linux iOS开发
Chrome浏览器如何导出所有书签并导入书签
【11月更文挑战第4天】本文介绍了如何在 Chrome 浏览器中导出和导入书签。导出时,打开书签管理器,点击“整理”按钮选择“导出书签”,保存为 HTML 文件。导入时,同样打开书签管理器,点击“整理”按钮选择“导入书签”,选择之前导出的 HTML 文件即可。其他主流浏览器也支持导入这种格式的书签文件。
1239 2
|
2月前
|
Web App开发 JavaScript 前端开发
使用 Chrome 浏览器的内存分析工具来检测 JavaScript 中的内存泄漏
【10月更文挑战第25天】利用 Chrome 浏览器的内存分析工具,可以较为准确地检测 JavaScript 中的内存泄漏问题,并帮助我们找出潜在的泄漏点,以便采取相应的解决措施。
397 9
|
3月前
|
Web App开发 开发者
|
3月前
|
Web App开发 JSON 安全
Chrome浏览器的跨域问题
【10月更文挑战第6天】
|
3月前
|
Web App开发 人工智能 前端开发
Google 浏览器中的 AI 魔法 — window.ai
本文介绍了如何在 Chrome Canary 中启用并使用设备端 AI 功能。通过下载 Chrome Canary 并启用相关 API,你可以在本地运行 AI 模型,无需互联网连接。文章详细讲解了设置步骤、确认 AI 可用性的方法以及如何使用 `window.ai` 进行文本会话。虽然目前的性能和功能还有待提升,但这一技术为未来的前端开发和智能应用提供了无限可能。
110 0
|
4月前
|
Web App开发 数据采集 存储
WebDriver与Chrome DevTools Protocol:如何在浏览器自动化中提升效率
本文探讨了如何利用Chrome DevTools Protocol (CDP) 与 Selenium WebDriver 提升浏览器自动化效率,结合代理IP技术高效采集微博数据。通过CDP,开发者可直接操作浏览器底层功能,如网络拦截、性能分析等,增强控制精度。示例代码展示了如何设置代理IP、cookie及user-agent来模拟真实用户行为,提高数据抓取成功率与稳定性。适用于需要频繁抓取互联网数据的应用场景。
616 3
WebDriver与Chrome DevTools Protocol:如何在浏览器自动化中提升效率
|
3月前
|
Web App开发 缓存 安全
Chrome浏览器启动参数大全
这是一组用于定制浏览器行为的命令行参数,包括但不限于:不停用过期插件、放行非安全内容、允许应用中心脚本、停用GPU加速视频、禁用桌面通知、禁用拓展及各类API、调整缓存设置、启用打印预览、隐身模式启动、设定语言、使用代理服务器、无头模式运行等。通过这些参数,用户可以根据需求灵活调整浏览器功能与性能。