我正在开发一个旨在自动记录 Google Meet 的 Google 扩展程序。我尝试在 javascript 中使用 autoclick 功能。但是当我以 Workspace 用户的身份召开会议时,它并没有执行。我的代码有什么问题吗?感谢回复。
// autoclick function
function iclick(node) {
let event = document.createEvent("MouseEvents");
event.initEvent("click", true, false);
node.dispatchEvent(event);
}
function autoRecord(node, interceptor) {
if (!node) return;
if (interceptor(node)) return;
try {
node = node.contentDocument;
if (!node) return;
} catch (e) {
return;
}
for (let childNode = node.firstChild; childNode; childNode = childNode.nextSibling) {
autoRecord(childNode, interceptor);
}
}
// get the Meet web content, clicking it with iclick()
function autorecorrd() {
autoRecord(document.body, (node) => {
if (node.nodeName == "#text" &&
(node.textContent.indexOf("theme") != -1 )) {
iclick(node);
}
// 錄製 = record
if (node.nodeName == "#text" &&
(node.textContent.indexOf("錄製") != -1)) {
iclick(node);
}
// 開始錄製 = start recording
if (node.nodeName == "#text" &&
(node.textContent.indexOf("開始錄製") != -1)) {
iclick(node);
}
// 開始 = start
if (node.nodeName == "#text" &&
(node.textContent.indexOf("開始") != -1)) {
iclick(node);
}
return false;
});
}
// execute the function
autoRecord()
这些是我在 Meet 中得到的 HTML 元素: