2016-08-12 13 views
1

現在、私はウェブサイトからさまざまなものをコピーして電子メールの本文に直接貼り付けるアドインを作っています。通常、CTRL-CをハイパーリンクとCTRL-Vを電子メールの本文に挿入すると、ハイパーリンク(青色の下線付きのテキスト)として表示されます。しかし、私のアドインを介してハイパーリンクを貼り付けると、リンクがテキストとして貼り付けられ、リンクが削除されます。ここでOffice/Outlookアドインからハイパーリンクを貼る

は、私は、クリップボードからデータを取得するために使用しているものです:

するvar URL = window.clipboardData.getData:

var url = window.clipboardData.getData("Text"); 
Office.context.mailbox.item.body.setSelectedDataAsync(url); 

私はこの問題を考えているのです("テキスト");

それだけでクリップボードにハイパーリンクを取り、ちょうど貼り付けるためit.Thereの「テキスト」バージョンもアドインを通じてのハイパーリンクを貼り付けてブロックしている可能性があり、いくつかのセキュリティ問題かもしれません。

私も使ってみました:

するvar URL = window.clipboardData.getData( "URL");

しかし、ボディに「null」の値をペーストするだけです。私は、これらのgetDataメソッドがMicrosoft Edgeとして推奨されていないことを知っていますが、私が知っているように、それらはまだすべてのInternet Explorerで動作するはずです。

私は、クリップボードからハイパーリンクを取得し、その名前/テキスト部分だけでなくハイパーリンクとして貼り付けることができることを認識していない方法はありますか?ありがとう!

答えて

0

問題は、Outlookにリンクを貼り付けることではありません。問題は最初にクリップボードから取得することです。 clipboardData.getData("URL")は機能せず、通常のIEウィンドウで確認できます。

IEでクリップボードからHTMLを取得するのは難しいです。ここで解説する解決方法があります:Get html from clipboard in javascript

+1

ありがとうございます。今のところ私は一時的なコードを使っています: 'var url = window.clipboardData.getData(" Text ");' 'Office.context.mailbox.item.setSelectedDataAsync( '' + url + ''、{coercionType:" html "});' – gogo

関連する問題