javascript - 用js写了一个简单的tab栏原理demo,但一运行就卡死浏览器。
高洛峰
高洛峰 2017-04-11 13:08:51
[JavaScript讨论组]

火狐和谷歌都卡死。
代码如下:


    


第一个盒子

第二个盒子

第三个盒子

第四个盒子

第五个盒子

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(4)
天蓬老师

注意这两行代码:

for(var i=0;i<btns.length;i++){
...
    for(var i=0;i<ps.length;i++){

由于不是 let,所以并没有块级作用域,于是乎外层循环和内层循环其实用的同一个 i,而你那个 ps 只是一个元素,并不是集合,所以 length 属性为 undefined,所以内层循环每次都把 i 重置了,于是乎死循环了,于是乎卡死了。

天蓬老师

把for放在click里面试试

天蓬老师

两个for循环, 里面的for重置了i

怪我咯

看一下jquery,其实没必要用到两个for

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号