Firefox拡張機能で、リッチテキスト/リンクをクリップボードにコピーするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/218462

  •  03-07-2019
  •  | 
  •  

質問

具体的には、リンク(テキストと場所を含む)をコピーして、たとえば、リンクとしてWordに貼り付けることができるようにします。

他のヒント

実際のコードは次のとおりです。

var richText = "<a href=\"" + gContextMenu.linkURL + "\">" + gContextMenu.linkText() + "</a>";
var xfer = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
xfer.addDataFlavor("text/html");

var htmlString = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
htmlString.data = richText;
xfer.setTransferData("text/html", htmlString, richText.length * 2);

var clipboard = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard);
clipboard.setData(xfer, null, Components.interfaces.nsIClipboard.kGlobalClipboard);

データがプレーンテキストである別の Components.interfaces.nsISupportsString を作成し、それを text / unicodeと同じ xfer に追加することもお勧めします

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top