吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 931|回复: 20
收起左侧

[求助] js取数组成员个数

[复制链接]
yuandeabc 发表于 2022-9-21 21:38
有一个网页,我用
var N = document.getElementsByClassName("bo").length;
        console.log("N:"+N)

来获取某个网页中该数组成员个数。
发现的问题是,每次首次访问该网页的时候,数组成员获取失败,console.log输出N值为0.但是如果我手动刷新一次页面,上面的命令就能获取到数组成员数N值55. 当然上面的命令,我已经设置了3秒后执行取数组成员数。按理来说,不会发生这样的现象。请问和解?

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
AG9000 + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

坏人。丶 发表于 2022-9-21 21:45
// (1)、页面所有内容加载完成执行
window.onload = function(){
   
}

// (2)、页面加载完毕
document.onreadystatechange = function(){
    if(doucument.readyState == 'complete'){
        // 页面加载完毕
    }
}

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
bobo2017365 + 1 + 1 用心讨论,共获提升!

查看全部评分

 楼主| yuandeabc 发表于 2022-9-21 21:50
坏人。丶 发表于 2022-9-21 21:45
// (1)、页面所有内容加载完成执行
window.onload = function(){
   

试了楼上的方法,结果是网页不动了,永远不执行放进去的代码,即使手动刷新也不执行
kesai 发表于 2022-9-21 22:16
evlon 发表于 2022-9-21 22:17
最简单的就是设置一个延时,settimeout

复杂的你得看是用的什么框架,如果是vue的话,需要在正确的时间执行之后,再查看变量的值


还有一种方法就是你截获http的事件,在指定查询事件完成之后再去查询这个变量
sololau00 发表于 2022-9-21 22:20
坏人。丶 发表于 2022-9-21 21:45
// (1)、页面所有内容加载完成执行
window.onload = function(){
   

页面加载后才执行,试试看
 楼主| yuandeabc 发表于 2022-9-21 22:41
evlon 发表于 2022-9-21 22:17
最简单的就是设置一个延时,settimeout

复杂的你得看是用的什么框架,如果是vue的话,需要在正确的时间 ...

我就是用settimeout 设置3秒的,三秒估摸应该足够
 楼主| yuandeabc 发表于 2022-9-21 22:42
sololau00 发表于 2022-9-21 22:20
页面加载后才执行,试试看

试过这个,这个页面加载我以前用过,用到这里,就会永远没加载完,故永远不执行放进去的代码
坏人。丶 发表于 2022-9-21 23:15
用一个btn测试,点击 然后输出个数 ,觉得是你代码写法有问题,但是不贴出来 只能考猜测
三滑稽甲苯 发表于 2022-9-22 07:54
最小可用代码发个出来
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止回复与主题无关非技术内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-15 03:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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