function onCopy() {
  if (navigator.clipboard && window.isSecureContext) {
    navigator.clipboard.writeText(encodeURI(`${H5link.value}`)).then(() => {
      ElMessage.success('复制成功')
    })
  } else {
    window.getSelection().removeAllRanges()
    const questionToCopy = document.querySelector('#copy')
    const range = document.createRange()
    range.selectNode(questionToCopy)
    window.getSelection().addRange(range)
    try {
      const successful = document.execCommand('copy')
      if (successful) {
        ElMessage.success('复制成功')
      }
    } catch (error) {
      ElMessage.error('复制失败')
    }
  }
}

注:navigator.clipboard的使用条件是安全环境,即除localhost和https外等环境外,无法使用该属性。

Last Updated:
Contributors: shenxin