2017-08-16 33 views
1

我自動在組成新郵件時插入簽名,然後我想將焦點/光標到郵件正文開頭,爲此我使用prependAsync()查看下面的代碼片段。outlook for mac - Office.context.mailbox.item.body.prependAsync()不會將焦點設置爲項目主體的開頭

  • 上述方法與Outlook效果很好(套集中在開頭)的Windows
  • ,但相同的代碼不能用於Mac的
  • 這樣做,在Outlook中

代碼剪斷使用:

factory.insertSign(function() { // does a Office.context.mailbox.item.body.setAsync() 
     $log.log(">> sign proccessed"); 
     factory.PrependData("##prepended##", function() { //does a Office.context.mailbox.item.body.prependAsync 
      deferred.resolve(); 
     }); 
    }); 

Outlook for Mac上的結果

enter image description here

平臺詳細信息:

  • Mac的Outlook版本15.38(170809)
  • MacOS的塞拉利昂10.12.6

我在這裏錯過了一些東西。請引導我前進。

回答

0

你如何「自動」插入簽名?它仍然需要用戶點擊加載項,對吧?

prependAsync()的預期行爲是它應該在不移動光標的情況下預先添加文本。這是我們在OWA和win32桌面Outlook中觀察到的行爲。我們正在確認Mac Outlook的行爲,但預計情況相同。

我們將更新API文檔以顯式調用此API的預期遊標行爲。

+0

是的,通過「自動插入」我的意思是手動打開加載項後插入簽名(html)。對我們來說,我們確定'prependAsync()'確實將光標移動到win32桌面前景的預定位置。 –

+0

對不起,我剛剛注意到你正在做一個setAsync然後prependAsync。 對於SetAsync - >調用後,不保證光標位於不同客戶端的相同位置。 prependAsync - >調用後光標不應該移動。 –

+0

正如我所說的,我們看到光標位置發生變化,實際上,這是我們從API獲得的期望行爲。如果不是'prependAsync()'應該使用那麼請提供備用解決方案(如果有的話)。 –