浏览代码

tab 循环问题列表

Michael Wang 4 年之前
父节点
当前提交
7bac8ee8d0
共有 1 个文件被更改,包括 20 次插入0 次删除
  1. 20 0
      src/components/mark/MarkBoardTrack.vue

+ 20 - 0
src/components/mark/MarkBoardTrack.vue

@@ -111,6 +111,26 @@ export default defineComponent({
     function numberKeyListener(event: KeyboardEvent) {
       // console.log(event);
       if (!store.currentQuestion) return;
+
+      function indexOfCurrentQuestion() {
+        return store.currentTask?.questionList.findIndex(
+          (q) =>
+            q.mainNumber === store.currentQuestion?.mainNumber &&
+            q.subNumber === store.currentQuestion.subNumber
+        );
+      }
+
+      // tab 循环答题列表
+      if (event.key === "Tab") {
+        const idx = indexOfCurrentQuestion() as number;
+        if (idx >= 0 && store.currentTask) {
+          const len = store.currentTask.questionList.length;
+          chooseQuestion(store.currentTask.questionList[(idx + 1) % len]);
+          event.preventDefault();
+        }
+        return;
+      }
+
       if (event.timeStamp - keyPressTimestamp > 1.5 * 1000) {
         keys = [];
       }