diff --git a/app/src/assets/scss/util/_function.scss b/app/src/assets/scss/util/_function.scss
index d9e60eabe..29f33aa2d 100644
--- a/app/src/assets/scss/util/_function.scss
+++ b/app/src/assets/scss/util/_function.scss
@@ -172,4 +172,8 @@
&__secondary {
color: var(--b3-theme-secondary);
}
+
+ &__selectnone {
+ user-select: none;
+ }
}
diff --git a/app/src/search/util.ts b/app/src/search/util.ts
index b2821efe4..1653d106d 100644
--- a/app/src/search/util.ts
+++ b/app/src/search/util.ts
@@ -205,7 +205,7 @@ export const genSearch = (app: App, config: ISearchOption, element: Element, clo
-
+
@@ -378,16 +378,20 @@ export const genSearch = (app: App, config: ISearchOption, element: Element, clo
break;
} else if (type === "next") {
if (!target.getAttribute("disabled")) {
- config.page++;
- inputTimeout = inputEvent(element, config, inputTimeout, edit);
+ if (config.page < parseInt(target.parentElement.querySelector("#searchResult").getAttribute("data-pagecount"))) {
+ config.page++;
+ inputTimeout = inputEvent(element, config, inputTimeout, edit);
+ }
}
event.stopPropagation();
event.preventDefault();
break;
} else if (type === "previous") {
if (!target.getAttribute("disabled")) {
- config.page--;
- inputTimeout = inputEvent(element, config, inputTimeout, edit);
+ if (config.page > 1) {
+ config.page--;
+ inputTimeout = inputEvent(element, config, inputTimeout, edit);
+ }
}
event.stopPropagation();
event.preventDefault();
@@ -1264,11 +1268,12 @@ const inputEvent = (element: Element, config: ISearchOption, inputTimeout: numbe
searchElement: searchInputElement,
});
});
+ const searchResultElement = element.querySelector("#searchResult")
if (inputValue === "" && (!config.idPath || config.idPath.length === 0)) {
fetchPost("/api/block/getRecentUpdatedBlocks", {}, (response) => {
onSearch(response.data, edit, element, config);
loadingElement.classList.add("fn__none");
- element.querySelector("#searchResult").innerHTML = "";
+ searchResultElement.innerHTML = "";
previousElement.setAttribute("disabled", "true");
nextElement.setAttribute("disabled", "true");
});
@@ -1296,9 +1301,10 @@ const inputEvent = (element: Element, config: ISearchOption, inputTimeout: numbe
nextElement.setAttribute("disabled", "disabled");
}
onSearch(response.data.blocks, edit, element, config);
- element.querySelector("#searchResult").innerHTML = `${config.page}/${response.data.pageCount || 1}
+ searchResultElement.innerHTML = `${config.page}/${response.data.pageCount || 1}
${window.siyuan.languages.findInDoc.replace("${x}", response.data.matchedRootCount).replace("${y}", response.data.matchedBlockCount)}`;
loadingElement.classList.add("fn__none");
+ searchResultElement.setAttribute("data-pagecount", response.data.pageCount || 1)
});
}
}, Constants.TIMEOUT_INPUT);