从网页复制内容时注入文本

And*_*son 17 javascript clipboard

我遇到了一个网站,它会在你突出显示并从其页面复制的任何文本的末尾注入"阅读更多:"行.

我以前从未见过这个,如果没有严格地挖掘他们的代码,我找不到执行此操作的代码.

有谁知道这是怎么做的?

示例:http://peaceful-parenting.suite101.com/article.cfm/how_to_keep_kids_from_climbing_on

复制一段文本,然后将其粘贴到另一个应用程序中,然后会有一个"阅读更多"行.

Ani*_*van 37

Suite101正在使用名为Tynt的第三方服务.

Tynt的JavaScript代码段位于http://tcr.tynt.com/javascripts/Tracer.js

我为您探索了源代码(在线JavaScript JavaScript美化器的帮助下).

所以这就是发生的事情:

  • 代码激活mouseup,mousedown和copy等事件(在startListeningForTraces函数中)
  • 如果用户选择了一系列文本,那么:
    • 为归属链接创建HTML,以及可选的CC许可URL
    • 将此HTML附加到选择中,将其置于零大小<div>(以使其在屏幕上不可见)
    • 报告被复制回Tynt服务器的内容

Tynt的代码做了大量工作,可以在浏览器中无缝地工作.