Jelajahi Sumber

querySelectorAll可以指定提取dom数据

PUGE 7 bulan lalu
induk
melakukan
ce0e2dc25a
1 mengubah file dengan 16 tambahan dan 4 penghapusan
  1. 16 4
      content-script.js

+ 16 - 4
content-script.js

@@ -84,11 +84,23 @@ function assistLoad() {
             // })
             case "querySelectorAll":
                 let returnList = []
+                let elTemp = null
+                if (typeof event.data.value === "string") {
+                    elTemp = document.querySelectorAll(event.data.value)
+                } else {
+                    elTemp = document.querySelectorAll(event.data.value[0])
+                }
                 document.querySelectorAll(event.data.value).forEach(element => {
-                    returnList.push({
-                    id: element.id,
-                    className: element.className,
-                    })
+                    let tempObj = {
+                        id: element.id,
+                        className: element.className,
+                    }
+                    if (typeof event.data.value === "object") {
+                        event.data.value[1].forEach(key => {
+                            if (element[key]) tempObj[key] = element[key]
+                        });
+                    }
+                    returnList.push(tempObj)
                 });
                 sendCallBack(event.data.callBackID, returnList)
                 break;