zhangjie 1 年之前
父节点
当前提交
88bed3c336

+ 7 - 1
src/features/check/CommonMarkBody.vue

@@ -382,8 +382,14 @@ const checkTrackValid = (event: MouseEvent) => {
   const { offsetX, offsetY } = event;
   const xLimitRate = 10 / naturalWidth;
   const yLimitRate = 10 / naturalHeight;
+  const xRange = [xLimitRate * clientWidth, (1 - xLimitRate) * clientWidth];
+  const yRange = [yLimitRate * clientHeight, (1 - yLimitRate) * clientHeight];
+
   return (
-    offsetX / clientWidth >= xLimitRate && offsetY / clientHeight >= yLimitRate
+    offsetX >= xRange[0] &&
+    offsetX <= xRange[1] &&
+    offsetY >= yRange[0] &&
+    offsetY <= yRange[1]
   );
 };
 const innerMakeTrack = (event: MouseEvent, item: SliceImage) => {

+ 8 - 1
src/features/mark/CommonMarkBody.vue

@@ -607,12 +607,19 @@ const checkTrackValid = (event: MouseEvent) => {
   const { offsetX, offsetY } = event;
   const xLimitRate = 10 / naturalWidth;
   const yLimitRate = 10 / naturalHeight;
+  const xRange = [xLimitRate * clientWidth, (1 - xLimitRate) * clientWidth];
+  const yRange = [yLimitRate * clientHeight, (1 - yLimitRate) * clientHeight];
+
   return (
-    offsetX / clientWidth >= xLimitRate && offsetY / clientHeight >= yLimitRate
+    offsetX >= xRange[0] &&
+    offsetX <= xRange[1] &&
+    offsetY >= yRange[0] &&
+    offsetY <= yRange[1]
   );
 };
 const innerMakeTrack = (event: MouseEvent, item: SliceImage) => {
   if (!checkTrackValid(event)) {
+    void message.destroy();
     void message.warn("轨迹位置距离边界太近");
     return;
   }

+ 1 - 1
src/features/mark/MarkBoardKeyBoard.vue

@@ -174,7 +174,7 @@ const questionScore = $computed(
 
 function numberKeyListener(event: KeyboardEvent) {
   // console.log(event);
-  if (event.target.tagName !== "BODY") return;
+  // if (event.target.tagName !== "BODY") return;
   if (!store.currentQuestion || !store.currentTask) return;
   if (store.globalMask) return;
 

+ 2 - 2
src/features/mark/MarkBoardTrack.vue

@@ -326,7 +326,7 @@ function chooseScore(score: number) {
 let keyPressTimestamp = 0;
 let keys: string[] = [];
 function numberKeyListener(event: KeyboardEvent) {
-  if (event.target.tagName !== "BODY") return;
+  // if (event.target.tagName !== "BODY") return;
   if (!store.currentQuestion) return;
   if (questionScoreDisabled) return;
   if (" jiklc".includes(event.key)) return;
@@ -379,7 +379,7 @@ function numberKeyListener(event: KeyboardEvent) {
 }
 
 function submitListener(e: KeyboardEvent) {
-  if (event.target.tagName !== "BODY") return;
+  // if (event.target.tagName !== "BODY") return;
   // if (import.meta.env.DEV && e.ctrlKey && e.key === "Enter") {
   if (e.ctrlKey && e.key === "Enter") {
     submit();