{
"name" : "Плагин окрашивания ячейки",
"guid" : "asc.{6401CE6B-3E19-45E1-9352-BFCF41989AA5}",
"version": "0.0.1",
"variations" : [
{
"description" : "Учебный плагин",
"url" : "index.html",
"icons": [ "logo(64х64).png" ],
"isViewer" : true,
"EditorsSupport" : ["cell"],
"isVisual" : true,
"isModal" : false,
"isInsideMode" : true,
"initDataType" : "",
"initData" : "",
"isUpdateOleOnResize" : false,
"buttons" : []
}
]
}
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<style type="text/css">
html, body {
margin: 0px;
padding: 0px;
/* overflow: hidden; */
width:100%;
height:100%;
}
</style>
<script type="text/javascript" src="https://onlyoffice.github.io/sdkjs-plugins/v1/plugins.js"></script>
<script type="text/javascript" src="https://onlyoffice.github.io/sdkjs-plugins/v1/plugins-ui.js"></script>
<link rel="stylesheet" href="https://onlyoffice.github.io/sdkjs-plugins/v1/plugins.css">
<script type="text/javascript" src="code.js"></script>
</head>
<body>
<table style="width: 100%;">
<tr><td>
<label class="header">Сменить цвет ячейки</label>
</td></tr>
<tr><td>
<button id="btn-1" style="width:75px;">Сменить цвет</button>
</td></tr>
</table>
</body>
</html>
(function(window, undefined){
//Функция API вызываемая редактором при инициализации плагина пользователем
window.Asc.plugin.init = function()
{
//Средствами DOM назначим функцию changeColor на обработку нажатия на кнопку
document.getElementById('btn-1').addEventListener('click', changeColor);
};
window.Asc.plugin.button = function(id)
{
this.executeCommand("close", "");
};
//Сменить цвет ячейки (ячеек), которую перед вызовом функции выделил пользователь
function changeColor(){
//Создание "песочницы" js, в поторой происходит работа с документом
window.Asc.plugin.callCommand(function() {
let oWorksheet =Api.GetActiveSheet();//Получить активный лист
let newColor=Api.CreateColorFromRGB(240, 240, 240);//Создать серый цвет
if(oWorksheet!=undefined){
let oActiveCell = oWorksheet.GetActiveCell();//Получить активную ячейку
if(oActiveCell!=undefined){//Залить активную ячейку, если она существует
oActiveCell.SetFillColor(newColor);
}
}
}, undefined,true); //true нужно чтобы редактор перерисовал лист!
};
})(window, undefined);