2016-08-12 73 views
1

目前我正在製作一個加載項,可以從網站複製各種內容並將它們直接粘貼到電子郵件的正文中。通常,當我將CTRL-C超鏈接和CTRL-V放入電子郵件正文中時,它會顯示爲超鏈接(帶藍色下劃線的文本)。但是,如果我通過我的加載項粘貼超鏈接,它將鏈接粘貼爲僅文本,鏈接被刪除。從Office/Outlook加載項粘貼超鏈接

這裏是我使用的是什麼從剪貼板獲取數據:

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

我想這個問題是在:

VAR URL = window.clipboardData.getData (「文本」);

因爲它只需要剪貼板中的超鏈接並只粘貼它的「文本」版本。可能還有一些安全問題可能會阻止通過加載項粘貼超鏈接。

我使用也試過:

VAR URL = window.clipboardData.getData( 「URL」);

但它只是在正文中粘貼一個「null」值。我知道這些getData方法自Microsoft Edge以來已被棄用,但我知道它們仍應適用於所有Internet Explorers。

有沒有其他方法我沒有意識到可以從剪貼板獲取超鏈接並將其粘貼爲超鏈接而不僅僅是它的名稱/文本部分?謝謝!

回答

0

問題不在於將鏈接粘貼到Outlook中 - 問題首先是從剪貼板中獲取它。 clipboardData.getData("URL")將不起作用,並且您可以在正常的IE窗口中驗證。

從剪貼板獲取HTML在IE中很棘手。有這裏討論的解決方案:Get html from clipboard in javascript

+1

感謝您的鏈接。現在我正在使用代碼:'var url = window.clipboardData.getData(「Text」);' 'Office.context.mailbox.item.setSelectedDataAsync('' + url + '',{coercionType:「html 「});' – gogo