ms-word - 如何使用 Office JS 在 Word 文档的正文中添加书签
问题描述
Office JS 在预览中提供了以下功能,但我找不到任何示例。
这是我尝试过的,但它似乎不起作用,知道我在这里缺少什么,因为此代码插入文本但未创建书签。
Word.run(function (context)
{
let range = context.document.getSelection();
return context.sync().then(function ()
{
range.insertText(`Test Bookmark`, Word.InsertLocation.replace);
let uniqueStr = new Date().getTime();
let bookmarkName = `Test_BookmarkCode_${uniqueStr}`;
range.insertBookmark(bookmarkName);
});
});
交叉张贴在这里。
解决方案
所以,这是工作代码。显然,当我们 insertText 时,会返回一个新的范围,我们需要使用该范围来插入书签。
Word.run(function (context)
{
let range = context.document.getSelection();
return context.sync().then(function ()
{
let insertedTextRange = range.insertText(`Test Bookmark`, Word.InsertLocation.replace);
let uniqueStr = new Date().getTime();
let bookmarkName = `Test_BookmarkCode_${uniqueStr}`;
insertedTextRange.insertBookmark(bookmarkName);
});
});
推荐阅读
- php - 对于 Shopify,我在学习 PHP 或 Ruby 之间存在冲突
- sql - MS Access VBA SQL SELECT * INTO tempTbl WHERE Stuff="" AND OtherStuff BETWEEN Date Range
- java - 是否可以使用通配符创建路由?
- python - 如何在 Python 中对幻数进行 lint(静态分析代码)?
- database - 如何验证我的 sqlite3 数据库是 3.25 版?
- amazon-web-services - 来自账户拥有的任何存储桶的 S3 跨账户通知
- javascript - Angular 6 动画转发(Angular 中的动画填充模式)
- java - 如何“跳过”一条规则以支持一条规则而不是另一条规则?
- go - 如何避免翻译舵图的一些`{{`?
- google-bigquery - 在使用 array_agg 创建数组之前过滤表达式