上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
12下一页
返回列表 发新帖

<!---->之间的元素如何获取

[复制链接]
  • TA的每日心情
    无聊
    2023-11-24 10:55
  • 签到天数: 61 天

    [LV.6]常住居民II

    14

    主题

    30

    回帖

    113

    积分

    中级工程师

    积分
    113
    发表于 2023-2-25 20:24:00 | 显示全部楼层 | 阅读模式
    悬赏1油猫币已解决

    <!——>之间的元素在页面正常显示,检查也能正常定位到,控制台也能querySelector到,就是在脚本里找不到

    image.png

    最佳答案

    查看完整内容

    这样写看看,因为querySelector获取的是第一个匹配目标,注释那个地方曾经是div的话,库就会获取到它,然后元素被替换成了注释。在控制台获取时,这里已经是注释,所以第一个div就是下面那个,而脚本执行时页面还没有渲染完全,你要获取的元素是当时的第二个。 我记得你之前反馈过ElementGetter获取不到的问题,我就怀疑过是这种情况,不过这个也不好从库的层面解决,严格来说不算错误,只是选择器的写法问题。 ...
  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    881

    回帖

    1379

    积分

    荣誉开发者

    积分
    1379

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-2-25 20:24:01 | 显示全部楼层
    1. .weu-card-body > div > div:nth-child(2)
    复制代码

    这样写看看,因为querySelector获取的是第一个匹配目标,注释那个地方曾经是div的话,库就会获取到它,然后元素被替换成了注释。在控制台获取时,这里已经是注释,所以第一个div就是下面那个,而脚本执行时页面还没有渲染完全,你要获取的元素是当时的第二个。
    我记得你之前反馈过ElementGetter获取不到的问题,我就怀疑过是这种情况,不过这个也不好从库的层面解决,严格来说不算错误,只是选择器的写法问题。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5966

    回帖

    6763

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6763

    荣誉开发者喜迎中秋油中2周年生态建设者

    发表于 2023-2-25 20:29:21 | 显示全部楼层
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    881

    回帖

    1379

    积分

    荣誉开发者

    积分
    1379

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-2-25 20:35:04 | 显示全部楼层
    脚本没理由获取不到的,要么是iframe,要么是延迟加载,<!——>只是注释元素,不影响元素获取。
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2023-11-24 10:55
  • 签到天数: 61 天

    [LV.6]常住居民II

    14

    主题

    30

    回帖

    113

    积分

    中级工程师

    积分
    113
    发表于 2023-2-25 20:35:14 | 显示全部楼层
    李恒道 发表于 2023-2-25 20:29
    用elemengetter库
    https://bbs.tampermonkey.net.cn/thread-2726-1-1.html

    用了,控制台一样的路径就是找不到或者找到别的元素去了,就好像被注释掉不存在一样
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2023-11-24 10:55
  • 签到天数: 61 天

    [LV.6]常住居民II

    14

    主题

    30

    回帖

    113

    积分

    中级工程师

    积分
    113
    发表于 2023-2-25 20:46:03 | 显示全部楼层

    cxxjackie 发表于 2023-2-25 20:35

    脚本没理由获取不到的,要么是iframe,要么是延迟加载,只是注释元素,不影响元素获取。 ...

    image.png
    image.png
    image.png
    同样的路径,找到了不一样的,很奇怪。。。

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    881

    回帖

    1379

    积分

    荣誉开发者

    积分
    1379

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-2-25 20:46:38 | 显示全部楼层
    player 发表于 2023-2-25 20:35
    用了,控制台一样的路径就是找不到或者找到别的元素去了,就好像被注释掉不存在一样 ...

    你是不是用了自动生成的选择器?:nth-child可能定位错了,这种看起来是vue框架,<!——>是元素的占位符,在页面渲染过程中这部分可能曾经是元素,然后脚本注入得早选择器就错位了,可以试着把nth-child从1改成2再看看,最好还是自己写,自动生成的不太靠谱。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    881

    回帖

    1379

    积分

    荣誉开发者

    积分
    1379

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-2-25 20:49:38 | 显示全部楼层
    player 发表于 2023-2-25 20:46
    [md]!(data/attachment/forum/202302/25/204321ui7jimtrrnh9bbhd.png)
    !(data/attachment/forum/202302/2 ...

    估计就是框架的问题,注释的那个地方可能曾经是个div,你试试获取第二个。
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5966

    回帖

    6763

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6763

    荣誉开发者喜迎中秋油中2周年生态建设者

    发表于 2023-2-25 21:01:25 | 显示全部楼层
    player 发表于 2023-2-25 20:46
    [md]!(data/attachment/forum/202302/25/204321ui7jimtrrnh9bbhd.png)
    !(data/attachment/forum/202302/2 ...

    延迟加载问题吧
    debugger追一下看看
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2023-11-24 10:55
  • 签到天数: 61 天

    [LV.6]常住居民II

    14

    主题

    30

    回帖

    113

    积分

    中级工程师

    积分
    113
    发表于 2023-2-25 21:03:56 | 显示全部楼层

    cxxjackie 发表于 2023-2-25 20:49

    估计就是框架的问题,注释的那个地方可能曾经是个div,你试试获取第二个。 ...

    image.png
    image.png
    image.png
    试了一下,这样终于能获取目标元素了,就是搞不懂直接写为什么拿不到。。。

    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表