js复制内容(亲测有效,不用选中也可复制内容)

本文介绍了两种在前端实现文本复制的简单方法,包括input和textarea方式。这两种方式都涉及到创建元素、设置值、选中内容及执行复制命令。input方式适用于单一行文本,textarea方式则支持换行。代码示例简洁实用,直接解决了不希望出现复杂选择和对象操作的问题。

复制分两种,input和textarea,他们的区别就是textarea可以支持换行之类的,返回isOk可以做提示方式:true/false

网上也试很多方式,不是要拿对象就是要选中复制,对于做界面的话太麻烦了,什么js四种方式复制,什么支持各浏览器复制都没用(小小吐槽一下,那些只复制没有实测的文章)

一、input方式

export function copyValue(v) {
  const inputEle = document.createElement('input')
  inputEle.setAttribute('readonly', 'readonly') // 防止手机上弹出软键盘
  document.body.appendChild(inputEle)
  inputEle.value = v
  inputEle.select()
  const isOk = document.execCommand('Copy')
  document.body.removeChild(inputEle)
}

二、textarea方式

export function copyValue(v) {
  const inputEle = document.createElement('textarea')
  inputEle.setAttribute('readonly', 'readonly') // 防止手机上弹出软键盘
  document.body.appendChild(inputEle)
  inputEle.value = v
  inputEle.select()
  const isOk = document.execCommand('Copy')
  document.body.removeChild(inputEle)
}

评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值