双击右键粘贴

双击右键粘贴,Chrome 浏览器测试通过

< Feedback on 双击右键粘贴

Question/comment

§
Posted:
Edited:

富文本编辑框是否只能用innerHTML/innerText插入从剪切板获取的内容呢

大佬的浏览器右键双击粘贴实在是太棒了,之前找了一堆网上的说法都没法实现浏览器粘贴

测试了下获取剪切板内容,点击图标,插入到input、textarea都正常

印象笔记正文非输入框格式,插入失效,元素名称是en-note,内容都是div

1定位光标位置鼠标弹起,判断元素名称,开发者工具显示console.log

if ((e.target.localName.toLowerCase() === 'en-note')&& e.target.disabled === false) {
            console.log(document.activeElement.tagName)
        }

2富文本编辑框是否要用innerHTML/innerText插入内容到光标所在位置呀

在印象笔记正文插入剪切板内容,用下面的代码都是插入到文字顶部,格式都乱了呢

if(window.navigator.clipboard.readText()
                       .then(text => {
                        console.log('Pasted content: ', text);
                        typeInTextarea(text);

                    })
function typeInTextarea(newText, el = document.activeElement) {
  const start = el.selectionStart
  const end = el.selectionEnd
  const text = el.innerText
  const before = text.substring(0, start)
  const after  = text.substring(end, text.length)
  el.innerText = (before + newText + after)
  el.selectionStart = el.selectionEnd = start + newText.length
  el.focus()
}

(已解决)~~问一个这个脚本代码的问题,用在其他地方~~

~~看JavaScript实现浏览器粘贴代码部分,想用在划词搜索,点图标实现粘贴~~

~~如果就调用函数,从剪切板获取了内容,插入到文本框鼠标位置如何写呢~~

Post reply

Sign in to post a reply.