调用函数无法立即执行
本帖最后由 探索1979 于 2023-11-9 17:40 编辑在myFunction()中调用monitorDomChange()没法立即执行到该函数体中,而是for完之
后再执行到该函数体中,请问如何解决
function myFunction() {
$(document).ready(function(){
// 获取指定 ID 的元素
const parentElement = document.getElementById('treeDemo');
// 获取所有子元素
const childElements = parentElement.children;
// 遍历所有子元素
for (let i = 0; i < childElements.length; i++) {
// 判断当前元素是否为 li 标签
if (childElements.tagName === 'LI') {//为什么不显示方括号,方括号里面有个i
// 获取 li 标签的 ID 并赋值给 document.getElementById()
const id = childElements.id;//为什么不显示方括号,方括号里面有个i
// 在这里可以执行你需要的操作,例如打印 ID 或其他操作
console.log(`Element with ID ${id+"_span"} found.`);
const targetElement = document.getElementById(id + "_span");
console.log(targetElement);
// 模拟点击事件
if (targetElement) {
const event = new MouseEvent('click', {
bubbles: true,
cancelable: true,
view: unsafeWindow,
interval: 5000 // Use the interval parameter here.
});
debugger;
setTimeout(() => {
monitorDomChange();
}, 0);
targetElement.dispatchEvent(event);
} else {
console.log('目标 ul 元素不存在!');
}
}
}
});
}
function monitorDomChange() {
// 你的代码在这里,例如:
} import库,def函数,正文代码 sai609 发表于 2023-11-9 13:55
import库,def函数,正文代码
大佬什么意思 求解这个是油猴插件 建议格式化代码后再来 我今天是大佬 发表于 2023-11-9 16:07
建议格式化代码后再来
已经格式化好,请大佬指导 for (let i = 0; i < childElements.length; i++) {
// 判断当前元素是否为 li 标签
if (childElements.tagName === 'LI') {
// 获取 li 标签的 ID 并赋值给 document.getElementById()
const id = childElements.id;
// 在这里可以执行你需要的操作,例如打印 ID 或其他操作
console.log(`Element with ID ${id+"_span"} found.`);
const targetElement = document.getElementById(id + "_span");
console.log(targetElement);
// 模拟点击事件
if (targetElement) {
const event = new MouseEvent('click', {
bubbles: true,
cancelable: true,
view: unsafeWindow,
interval: 5000 // Use the interval parameter here.
});
debugger;
setTimeout(() => {
monitorDomChange();
}, 0);
targetElement.dispatchEvent(event);
} else {
console.log('目标 ul 元素不存在!');
}
}
}
for循环是i在变化,但是循环体内又没有用到i,所以应该是直接跳出for循环了 ciker_li 发表于 2023-11-9 16:59
for (let i = 0; i < childElements.length; i++) {
// 判断当前元素是否为 li 标签
if (chi ...
i 根据childElements.length这个循环 探索1979 发表于 2023-11-9 17:22
i 根据childElements.length这个循环
for循环里哪里用到i了? ciker_li 发表于 2023-11-9 18:01
for循环里哪里用到i了?
if (childElements.tagName === 'LI') {//为什么不显示方括号,方括号里面有个i
// 获取 li 标签的 ID 并赋值给 document.getElementById()
const id = childElements.id;//为什么不显示方括号,方括号里面有个i 没懂LZ是想要实现什么效果
monitorDomChange为什么要放在setTimeout里面
页:
[1]
2