mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-01-28 11:16:09 +01:00
This commit is contained in:
parent
164478def5
commit
4471bdff01
5 changed files with 91 additions and 21 deletions
|
|
@ -1,3 +1,7 @@
|
|||
const isNormalItem = (currentHintElement: HTMLElement, className: string) => {
|
||||
return currentHintElement.classList.contains("fn__none") || !currentHintElement.classList.contains(className)
|
||||
}
|
||||
|
||||
export const upDownHint = (listElement: Element, event: KeyboardEvent, classActiveName = "b3-list-item--focus") => {
|
||||
let currentHintElement: HTMLElement = listElement.querySelector("." + classActiveName);
|
||||
if (!currentHintElement) {
|
||||
|
|
@ -10,15 +14,13 @@ export const upDownHint = (listElement: Element, event: KeyboardEvent, classActi
|
|||
currentHintElement.classList.remove(classActiveName);
|
||||
|
||||
currentHintElement = currentHintElement.nextElementSibling as HTMLElement;
|
||||
while (currentHintElement &&
|
||||
(currentHintElement.classList.contains("fn__none") || !currentHintElement.classList.contains(className))) {
|
||||
while (currentHintElement && isNormalItem(currentHintElement, className)) {
|
||||
currentHintElement = currentHintElement.nextElementSibling as HTMLElement;
|
||||
}
|
||||
|
||||
if (!currentHintElement) {
|
||||
currentHintElement = listElement.children[0] as HTMLElement;
|
||||
while (currentHintElement &&
|
||||
(currentHintElement.classList.contains("fn__none") || !currentHintElement.classList.contains(className))) {
|
||||
while (currentHintElement && isNormalItem(currentHintElement, className)) {
|
||||
currentHintElement = currentHintElement.nextElementSibling as HTMLElement;
|
||||
}
|
||||
}
|
||||
|
|
@ -37,8 +39,7 @@ export const upDownHint = (listElement: Element, event: KeyboardEvent, classActi
|
|||
currentHintElement.classList.remove(classActiveName);
|
||||
|
||||
currentHintElement = currentHintElement.previousElementSibling as HTMLElement;
|
||||
while (currentHintElement &&
|
||||
(currentHintElement.classList.contains("fn__none") || !currentHintElement.classList.contains(className))) {
|
||||
while (currentHintElement && isNormalItem(currentHintElement, className)) {
|
||||
currentHintElement = currentHintElement.previousElementSibling as HTMLElement;
|
||||
}
|
||||
|
||||
|
|
@ -64,8 +65,7 @@ export const upDownHint = (listElement: Element, event: KeyboardEvent, classActi
|
|||
event.stopPropagation();
|
||||
currentHintElement.classList.remove(classActiveName);
|
||||
currentHintElement = listElement.children[0] as HTMLElement;
|
||||
while (currentHintElement &&
|
||||
(currentHintElement.classList.contains("fn__none") || !currentHintElement.classList.contains(className))) {
|
||||
while (currentHintElement && isNormalItem(currentHintElement, className)) {
|
||||
currentHintElement = currentHintElement.nextElementSibling as HTMLElement;
|
||||
}
|
||||
if (!currentHintElement) {
|
||||
|
|
@ -79,8 +79,7 @@ export const upDownHint = (listElement: Element, event: KeyboardEvent, classActi
|
|||
event.stopPropagation();
|
||||
currentHintElement.classList.remove(classActiveName);
|
||||
currentHintElement = listElement.children[listElement.children.length - 1] as HTMLElement;
|
||||
while (currentHintElement &&
|
||||
(currentHintElement.classList.contains("fn__none") || !currentHintElement.classList.contains(className))) {
|
||||
while (currentHintElement && isNormalItem(currentHintElement, className)) {
|
||||
currentHintElement = currentHintElement.previousElementSibling as HTMLElement;
|
||||
}
|
||||
if (!currentHintElement) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue