javascript - Office-JS 忽略 Word for Mac 中的尾随换行符

标签 javascript ms-word office-js

在我的 Office-JS 加载项中,我插入一个带有尾随换行符的文本,并将光标设置到该文本的末尾,如下所示:

function myInsertTest() {
  Word.run(function(context) {
    var selectedRange = context.document.getSelection();
    selectedRange.insertText("myText", "End");
    selectedRange.insertText("\r\n", "End");
    selectedRange.select("End");
    return context.sync();
  });
}

在 Windows 上的 Word 2016 中,光标正确设置为第二行,但在 Word for Mac(版本 16.11)中,光标设置为第一行末尾。

因此,如果我连续运行此函数 3 次,则会产生以下文本:

在 Windows 上:

myText
myText
myText
<-- Cursor is here

在 Mac 上:

myTextmyTextmyText<-- Cursor is here
// 3 new lines following

我错过了什么吗?

最佳答案

您可以通过允许 Word 为您处理换行问题来避免处理这种问题。诀窍是提供插入 HTML <br>使用 insertHtml() 标记相反:

function myInsertTest() {
  Word.run(function(context) {
    let selectedRange = context.document.getSelection();
    selectedRange.insertText("myText", "End");
    selectedRange.insertHtml("<br />&nbsp;", "End");
    selectedRange.select("End");
  });
}

请注意 &nbsp;需要避免 Word 过于聪明而忽略其后没有任何内容的中断。

关于javascript - Office-JS 忽略 Word for Mac 中的尾随换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49279062/

相关文章:

javascript - 使用javascript删除动态创建的组合框选项

javascript - Child.prototype = Parent.prototype 与 Child.prototype = new Parent()

c# - 使用 c# 将 word 文件(.docx 和 doc)转换为 .pdf 不起作用

vba - 将Word文档中的所有图像缩放至100%的脚本

javascript - 是否可以搜索Word文档并返回所有表格?

javascript - 如何使用javascript实现悬停效果?

javascript - Jquery 不工作,但我想一切都好

vba - dotm 创建新文档 - 如何删除对模板的引用?

javascript - Office.js 在搜索中转义特殊字符

xml - Office 插件 list