浏览代码

无障碍:优化无障碍文本信息提取功能

任一存 3 年之前
父节点
当前提交
edc472a916
共有 2 个文件被更改,包括 7 次插入5 次删除
  1. 6 4
      web/src/utils.js
  2. 1 1
      web/src/views/accessibility.vue

+ 6 - 4
web/src/utils.js

@@ -24,7 +24,7 @@ function mapTags(tag) {
 }
 
 let lastMeaningfulNode = null
-function extractTextForMagnify(e) {
+function extractTextForMagnify(e, allowRepeatd = false) {
   let meaningfulNode = e.path[0]
 
   if (e.type === 'mouseover') {
@@ -69,10 +69,12 @@ function extractTextForMagnify(e) {
     }
   }
 
-  if (meaningfulNode === lastMeaningfulNode) {
-    return
+  if (!allowRepeatd) {
+    if (meaningfulNode === lastMeaningfulNode) {
+      return
+    }
+    lastMeaningfulNode = meaningfulNode
   }
-  lastMeaningfulNode = meaningfulNode
   
   let elemType = ''
   const ariaLabel = meaningfulNode.getAttribute('aria-label')

+ 1 - 1
web/src/views/accessibility.vue

@@ -871,7 +871,7 @@ export default {
       if (!this.ariaSettings.isCompActive) {
         return
       }
-      const extractedText = utils.extractTextForMagnify(e)
+      const extractedText = utils.extractTextForMagnify(e, true)
       if (extractedText) {
         this.elemType = extractedText.elemType
         this.elemDisc = extractedText.elemDisc