Vanessa 2024-07-04 16:44:37 +08:00
parent 275a635f4d
commit b949e53568

View file

@ -75,7 +75,7 @@ export class Gutter {
hideTooltip();
window.siyuan.menus.menu.remove();
const buttonElement = event.target.parentElement;
const selectIds: string[] = [];
let selectIds: string[] = [];
let selectElements: Element[] = [];
let avElement: Element;
if (buttonElement.dataset.rowId) {
@ -90,11 +90,27 @@ export class Gutter {
selectElements.push(item);
});
} else {
protyle.wysiwyg.element.querySelector(`[data-node-id="${buttonElement.getAttribute("data-node-id")}"]`)?.classList.add("protyle-wysiwyg--select");
const gutterId = buttonElement.getAttribute("data-node-id")
selectElements = Array.from(protyle.wysiwyg.element.querySelectorAll(".protyle-wysiwyg--select"));
selectElements.forEach(item => {
selectIds.push(item.getAttribute("data-node-id"));
});
let selectedIncludeGutter = false;
selectElements.forEach((item => {
const itemId = item.getAttribute("data-node-id")
if (itemId === gutterId) {
selectedIncludeGutter = true
}
selectIds.push(itemId);
}))
if (!selectedIncludeGutter) {
const gutterNodeElement = protyle.wysiwyg.element.querySelector(`[data-node-id="${gutterId}"]`)
if (gutterNodeElement) {
selectElements.forEach((item => {
item.classList.remove("protyle-wysiwyg--select")
}));
gutterNodeElement.classList.add("protyle-wysiwyg--select")
selectElements = [gutterNodeElement]
selectIds = [gutterId];
}
}
}
const ghostElement = document.createElement("div");