Ms word 如何在Word加载项任务窗格中创建自定义的添加注释?

Ms word 如何在Word加载项任务窗格中创建自定义的添加注释?,ms-word,office-js,office-addins,word-addins,word-web-addins,Ms Word,Office Js,Office Addins,Word Addins,Word Web Addins,我正在为Word for mac创建一个MS Word加载项,我必须创建一个带有任务窗格的自定义注释部分,这样我就创建了一个文本框,并在单击按钮时创建了一个按钮。注释将添加到所选文本中 我发现很多文章,但不适合我,所以我在下面附上一个示例代码 HTML文件 <div class="padding"> <textarea id="areaDiv"></textarea>

我正在为Word for mac创建一个MS Word加载项,我必须创建一个带有任务窗格的自定义注释部分,这样我就创建了一个文本框,并在单击按钮时创建了一个按钮。注释将添加到所选文本中

我发现很多文章,但不适合我,所以我在下面附上一个示例代码

HTML文件

    <div class="padding">
            <textarea id="areaDiv"></textarea>
            <button id="addComment">Add Comment</button>
            <div id="errorDiv"></div>
     </div>

**JS File**
Office.onReady(function () {
    // Office is ready
    $(document).ready(function () {
        // The document is ready
        // Use this to check whether the API is supported in the Word client.
        if (Office.context.requirements.isSetSupported('WordApi', '1.1')) {
            // Do something that is only available via the new APIs
            $('#addComment').click(addComment);

            $('#supportedVersion').html('This code is using Word 2016 or later.');
        }
        else {
            // Just letting you know that this code will not work with your version of Word.
            $('#supportedVersion').html('This code requires Word 2016 or later.');
        }
    });
});


// Function that writes to a div with id='message' on the page.

function addComment() {
    Office.context.document.getSelectedDataAsync(Office.CoercionType.Text,
        { valueFormat: "unformatted", filterType: "all" },
        function (asyncResult) {
            var error = asyncResult.error;
            if (asyncResult.status === Office.AsyncResultStatus.Failed) {
                write('');
            }
            else {
                var range = asyncResult.value;
                write(range);
            }
        });
}
function onError(error) {
    $('#errorDiv').text(error.name + ' ' + error.code + ': ' + error.message);
}
function write(range) {
    $('#errorDiv').text(range);
    var text = $("#areaDiv").val();
    if (range != null && range != "" && text != null && text != "") {
        $('#errorDiv').text(range + " " + text);
        var document = Office.context.document.properties.comments;
        document.add(range, text);
        $("#areaDiv").val("");
    }
}

添加注释
**JS文件**
Office.onReady(函数(){
//办公室准备好了
$(文档).ready(函数(){
//文件准备好了
//使用此选项检查Word客户端中是否支持API。
if(Office.context.requirements.isSetSupported('WordApi','1.1')){
//做一些只有通过新API才可用的事情
$(“#添加注释”)。单击(添加注释);
$(“#supportedVersion”).html('此代码使用Word 2016或更高版本');
}
否则{
//只是让您知道此代码无法与您的Word版本一起使用。
$(“#supportedVersion”).html('此代码需要Word 2016或更高版本');
}
});
});
//函数,该函数写入页面上id为='message'的div。
函数addComment(){
Office.context.document.getSelectedDataAsync(Office.胁迫类型.Text,
{valueFormat:“未格式化”,filterType:“所有”},
函数(异步结果){
var error=asyncResult.error;
if(asyncResult.status==Office.AsyncResultStatus.Failed){
写(“”);
}
否则{
var范围=asyncResult.value;
写入(范围);
}
});
}
函数onError(错误){
$('#errorDiv').text(error.name+''+error.code+:''+error.message);
}
函数写入(范围){
$('#errorDiv')。文本(范围);
var text=$(“#areaDiv”).val();
如果(范围!=null&&range!=“”&&text!=null&&text!=“”){
$('#errorDiv').text(范围+“”+text);
var document=Office.context.document.properties.comments;
文件。添加(范围、文本);
$(“#areaDiv”).val(“”);
}
}
此处没有错误,但存在一个问题,即所选文本未设置注释,且未进入catch块

如果有人对此有想法,那么这对我帮助很大