// 复制文案功能:

const jsCopy = function(obj) {

function fn() {

var u = navigator.userAgent;

//苹果

if (u.match(/(iPhone|iPod|iPad);?/i)) { //ios

// alert('苹果啊');

//要复制文字的节点

var copyDOM = obj.parentNode.firstChild.nextElementSibling;

var range = document.createRange();

// 选中需要复制的节点

range.selectNode(copyDOM);

// 执行选中元素

window.getSelection().addRange(range);

// 执行 copy 操作

var successful = document.execCommand('copy');

try {

var msg = successful ? 'successful' : 'unsuccessful';

console.log('copy is' + msg);

} catch (err) {

console.log('Oops, unable to copy');

}

// 移除选中的元素

window.getSelection().removeAllRanges();

obj.innerHTML = '已复制'

//obj.setAttribute('data-state','yes');

}

// 安卓

if (u.indexOf('Android') > -1) {

// alert('安卓啊');

var $copyPP = obj.parentNode.firstChild.nextElementSibling,

$copyText = obj.parentNode.lastChild.nextElementSibling;

$copyText.innerHTML = $copyPP.innerHTML.replace(/]+>/g, "");

$copyText.select(); // 选择对象

document.execCommand("Copy"); // 执行浏览器复制命令

obj.innerHTML = '已复制';

}

// 安卓系统的UC浏览器

if (u.indexOf('Android') > -1 && u.indexOf('UCBrowser') > -1) {

obj.innerHTML = '点击复制文案';

alert('若点击复制文案无效,请长按内容手动复制!');

}

}

obj.addEventListener('click', fn, false);

};

//

let copyBtns = document.querySelectorAll('.js-copy-btn');

copyBtns.forEach((obj) => {

jsCopy(obj);

});

html 手机端可以选择复制粘贴,js移动端实现网站内容复制粘贴功能相关推荐

  1. 通过纯js代码实现将指定内容复制到粘贴板(兼容各主流浏览器)

    通过纯js代码实现将指定内容复制到粘贴板(兼容各主流浏览器) 1.业务需求: vue项目需要通过点击button按钮将指定内容复制到粘贴板中,且不引入第三方组件. 2.解决方案: js写法如下(这里是 ...

  2. 手机端微信突然弹出电脑端已登录,是什么原因?

    大半夜的,打开手机看下时间,结果,手机端微信突然弹出电脑端已登录,是不是感觉特别惊悚?是不是怀疑自己的微信被盗号了,电脑端微信突然自动登陆,究竟是什么原因呢? 一.电脑端设置了免验证登陆功能 你经常使 ...

  3. php 手机端播放器,用JS代码适配电脑端和手机端播放器代码

    用JS代码适配电脑端和手机端播放器代码 蓝叶    网站设计    2016-08-10    10668    9评论 随着html5的崛起,很多网站都采用html5代码来设计,让网站美观大气,但是 ...

  4. html 手机端拖拽效果,JS实现移动端触屏拖拽功能

    1.html 2.css * { margin: 0; padding: 0; } html, body { width: 100%; height: 100%; } #div1 { width: 5 ...

  5. php自动识别pc和手机端并跳转,JS如何实现网站中PC端和手机端自动识别并跳转对应的代码...

    1.  代码场景: 描述:在项目中,一般我们会使用响应式布局的方式或者借助bootstrap等插件来做响应式的网站.但是根据业务的需求,手机端可能会在功能上精简很多,我们也会写两套代码,分别用来实现P ...

  6. 东北狼仙:苏宁手机端样式rem+flexible.js

    手机端研究了好几天做了手机端,还好基础的程序员生活不是很难,用心做几个项目撸出来就好了,最近学些rem布局挺不错的针对手机端使用比较不错,整个页面都可以自适应解决了字体图片等等的整体变大变小不会让页面 ...

  7. zepto.js手机端开宝箱动画js特效

    下载地址 zepto.js实现的手机端开宝箱动画特效 dd:

  8. 手机端密码键盘(weiKeyBoard.js)

    背景 公司最近项目上要做手机端支付,支付时需要使用自定义键盘.网上找了些,没找到称心如意的,看时间还算充裕就自己写了个. 功能描述 样式上与微信的密码键盘一样. 当前版本1.0. 数字位置可设定为随机 ...

  9. Clipboard.js移动端【ios】复制事件不生效解决方法

    在需要添加复制事件的元素增加Css样式: cursor: pointer; 要给点击复制的按钮加这个属性才能在移动端好用. 苹果和安卓百分百好用. // $(function(){// var cli ...

  10. html5手机端设置date,如何在移动端更好地使用HTML5 date input

    烙印99 众所周知,HTML5新增了几种input类型,比如email, number, url, range, date等.这些input类型在一定程度上方便了我们做输入限制和数据校验.但是不同的浏 ...

最新文章

  1. mysql数据更新回退_Mysql的几个灵魂拷问(一)
  2. 连通域最小外接矩形算法原理_基于分割的文本检测算法之PSENet/PAN/DBNet
  3. 陌陌一面,为什么SpringBoot的 jar 可以独立运行?
  4. 微观世界探索者:15家值得关注的纳米技术公司
  5. 利用Chrome的Heap Snapshot功能分析一个时间段内的内存占用率
  6. ldd随笔(1)-linux设备模型
  7. jquery-待办事列表-待整理
  8. C++基于TCP和UDP的socket通信
  9. 【华为云技术分享】使用Python连接Kerberos的Presto
  10. 【安全】Kerberos协议介绍
  11. selenium-远程调用
  12. 随机微分方程学习笔记03 Fisk-Stratonovich积分
  13. 步进电机驱动器介绍 --PWM
  14. Sublime 高亮汇编asm文件
  15. 数字时代带给孩子们的只有“冰冷”的科技吗?_数字体验_新浪博客
  16. 第十三届蓝桥杯C/C++ 大学B组题解
  17. 常用的几个测试网络连接的命令
  18. OSAL初始化流程分析
  19. Algorithm算法
  20. 安装多个jdk版本并切换

热门文章

  1. 3D建模到底难不难?
  2. 深击 | 阿里云故障“惊魂”1小时:难道我们是那0.1%?
  3. 小狼毫五笔输入法设置
  4. excel如何设置下拉框选项
  5. 格力董明珠和小米雷军的10亿赌局 --- 当年的理念谁赢谁输
  6. 【20211009】【数学基础】极值点、驻点、拐点的区别和联系
  7. 第十一节:抽象类和接口【java】
  8. Python实现多个Excel文件合并到一个文件中
  9. R语言生存分析之竞争风险模型
  10. matlab怎么表示对角阵,matlab – 如何基于每一行将矩阵转换为一堆对角矩阵?