BlenderB 发表于 2022-5-26 18:15:02

javascript 复选框触发打开新窗口事件

本帖最后由 王佳 于 2022-5-26 18:23 编辑

525多点测试
https://scriptcat.org/script-show-page/461

我想通过复选框的选中状态,通过for循环依次打开对应网址。搞不懂哪里错了,一直无法按要求运行的。还有其他的方法可以实现吗。或者说这个想法本身就是错的。大佬帮忙复制到油猴试验下。

李恒道 发表于 2022-5-26 18:15:03

k1=document.getElementById('kuang1').checked,//获取复选框1的状态,控制台输出为true
k2=document.querySelector("#kuang2").checked,//获取复选框2的状态,控制台输出为false, 下同
k3=document.querySelector("#kuang3").checked,
k4=document.querySelector("#kuang4").checked,
这里直接读取的是最初的状态,以后状态不会改变的

BlenderB 发表于 2022-5-26 18:26:07

李恒道 发表于 2022-5-26 18:20
k1=document.getElementById('kuang1').checked,//获取复选框1的状态,控制台输出为true
k2=document.query ...

我说咋老是输出第一个网站、{:4_111:}哥哥能再指点下怎么再点击后再获取状态吗,重新上传脚本了

李恒道 发表于 2022-5-26 18:37:45

王佳 发表于 2022-5-26 18:26
我说咋老是输出第一个网站、哥哥能再指点下怎么再点击后再获取状态吗,重新上传脚本了 ...

对每一个checked设置一个你自己特有的class类名
然后通过queryselectorall读取出来所有的checked的dom元素
再用map(item=>item.checked)遍历即可

BlenderB 发表于 2022-5-26 18:38:11

李恒道 发表于 2022-5-26 18:20
k1=document.getElementById('kuang1').checked,//获取复选框1的状态,控制台输出为true
k2=document.query ...

啊我悟了 等会发代码 不用回我先

BlenderB 发表于 2022-5-26 18:54:42

李恒道 发表于 2022-5-26 18:37
对每一个checked设置一个你自己特有的class类名
然后通过queryselectorall读取出来所有的checked的dom元 ...

哥哥,我还没学到后面,您说的我还理解不了,我是边调边学的,根据您的指示,目前是把前头的4个.checked删掉,放到if(arr.checked)里面解决了_(:3」∠❀)_
肝了我两天的for循环原来是顺序搞错了

李恒道 发表于 2022-5-26 20:32:07

王佳 发表于 2022-5-26 18:54
哥哥,我还没学到后面,您说的我还理解不了,我是边调边学的,根据您的指示,目前是把前头的4个.chec ...

哥哥加油学~
页: [1]
查看完整版本: javascript 复选框触发打开新窗口事件