у вас есть несколько вариантов для этого.
- Вы можете сохранить диапазоны, где вы сделали блики.
- Вы можете обернуть результаты диапазона с невидимым контролем содержимого (как подсказывает Синди в своем комментарии), создайте тег, а затем просмотрите эти элементы управления содержимым (используя элементы управления содержимым, используя метод тега), чтобы отформатировать ваши основные моменты (и удалить элементы управления содержимым.
2)из простых для реализации:)
Для 1) пожалуйста, посмотрите на следующий пример, он не делает именно то, что вам нужно, но вы можете получить представление о том, как этого добиться.Цель состоит в том, чтобы сохранить каждый диапазон с помощью метода treackedObjects, который является самым важным битом.В этом случае я создаю массив диапазонов, которые были найдены, а затем вы можете использовать его для очистки ваших бликов.пожалуйста, не забудьте вызвать context.trackedObjects.remove, так как вы выделяете память для временного хранения этих объектов.Кстати, в моем примере убедитесь, что вы включили комбо-код с идентификатором "FoundRanges"
, вот фрагмент сценария сценария лаборатории , который вы можете использовать.
function loadCombo() {
Word.run(function (context) {
var rangesAr = [];
var currentlySelectedIndex = 0;
var myRanges = context.document.body.search("Word");
context.load(myRanges, { expand: 'font' });
return context.sync()
.then(function () {
var myCombo = document.getElementById("FoundRanges");
for (var i = 0; i < myRanges.items.length; i++) {
var myItem = document.createElement("option");
myItem.text = myRanges.items[i].text
myCombo.add(myItem);
var newRange = myRanges.items[i].getRange();
rangesAr.push(newRange);
context.trackedObjects.add(newRange);
}
$('#FoundRanges').change(function () {
rangesAr[this.selectedIndex].font.bold = true;
currentlySelectedIndex = this.selectedIndex;
return context.sync()
.catch(function (e) {
console.og(e.message);
})
});
return context.sync()
})
}).catch(function (e) {
console.log(e.message)
})
}