|
@@ -16,16 +16,14 @@
|
|
|
*/
|
|
|
|
|
|
export const copy = (text: string): boolean => {
|
|
|
- const range = document.createRange()
|
|
|
- const node = document.createTextNode(text)
|
|
|
- document.body.append(node)
|
|
|
- range.selectNode(node)
|
|
|
- window.getSelection()?.addRange(range)
|
|
|
+ const inp = document.createElement('input')
|
|
|
+ document.body.appendChild(inp)
|
|
|
+ inp.value = text
|
|
|
+ inp.select()
|
|
|
let result = false
|
|
|
try {
|
|
|
result = document.execCommand('copy')
|
|
|
} catch (err) {}
|
|
|
- window.getSelection()?.removeAllRanges()
|
|
|
- document.body.removeChild(node)
|
|
|
+ inp.remove()
|
|
|
return result
|
|
|
}
|