您好,登录后才能下订单哦!
这篇文章主要介绍了怎么让HTML5实现移动端复制功能,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
首先遇到这个需求是就各种百度,但是发现基本都是用js实现,而且兼容性还非常不好。
但是在寻觅和尝试的过程中,发现只需要css代码也可以完全实现的,对需要复制内容的标签加上下面这几行代码就可以了。
-webkit-touch-callout: all; -webkit-user-select: all; -moz-user-select: all; -ms-user-select: all; user-select: all;
其实意思就是不限制用户对内容的操作,不禁用系统默认菜单,长按会显示系统自带的复制功能进行复制。
使用clipboard.js实现移动端粘贴复制
clipboard.js是一款很强大的粘贴复制的插件,但是在移动端使用,会出现兼容性问题。下面是我常使用的一种解决方案。
html
<input id="foo1" value="http://www.shellad.com/_2SP__22(要复制的内容)" readonly="readonly"> <p class="the_btn_con"><button class="btn" data-clipboard-target="#foo1">复制</button></p>
js
$(function () { var clipboard = new Clipboard('.btn'); //优雅降级:safari 版本号>=10,提示复制成功;否则提示需在文字选中后,手动选择“拷贝”进行复制 clipboard.on('success', function(e) { alert('复制成功!') console.log($(this)) e.clearSelection(); }); clipboard.on('error', function(e) { alert('请选择“拷贝”进行复制!') }); })
注意我在保存要复制的内容时使用的是input控件,而不是p或者span。因为,在测试时只有input的兼容性最好,不会出现问题,能够保证正常复制。同时,该插件也不支持safari 版本号<10,所以要做好提示。
感谢你能够认真阅读完这篇文章,希望小编分享怎么让HTML5实现移动端复制功能内容对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。