这个JS复制技巧如何工作?

5 javascript dom

此页面上,如果您复制,几乎在页面的任何位置都会将字符串 Read more at http://添加到副本的末尾.我想知道如何.在查看源代码(post-copypaste.js)并设置断点后我不明白.当我选择文本时,该区域似乎正在触发.

我试着看看DOM(通过firefox中的视图选择源),我没有看到dom中的文本.所以它一定是一个javascript技巧.我可以想象捕捉一个控件C事件(我不知道这是不是发生了什么)但我无法想象你如何添加或影响正在编译的文本,因为它属于dom.我没有看到闪烁或任何东西

这个JS技巧是如何工作的,或者我如何调试它来解决它?

Bar*_*kes 0

但尴尬的是常规 window/dom 上的选择似乎不受影响。

确实如此,但只是不可见。通常发生的情况是页面其他地方有一个容器(不一定可见)。您选择的内容将被粘贴到那里,然后扩展,然后复制并从容器中删除。这一切都需要几分之一秒的时间,当您将其粘贴到某个地方时,您的剪贴板已经存储了扩展内容。

如果仔细观察作为示例链接的页面,正文中有一个空的 div 标签,其类别为 pw-root。<div class='pw-root'></div>当您复制文本时,有一秒钟(例如在 Firebug 中可见),它会按照上面的说明发生变化,然后再次清空。