84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
刚接触js,在练习table切换时,如下图所示,获取第一个p标签时显示错误。请大神指教。
修改了了下语法,简单好多。不过还有一点疑惑。if的条件语句this==op[j]中,this指的是op[i],但是把这句话改成op[i]==op[j]或者直接改成i==j就不行呢?
走同样的路,发现不同的人生
你这里 DOM 操作的语法是没有问题的,问题在于,你这段 JS 位于 head 中,意味着执行的时候 DOM 结构还没渲染完成,意味着你期望获取的节点还没被渲染出来,所以 DOM 操作无法获取到那个 id 的节点,所以返回 null,所以第二个 DOM 操作报错。处理方式:把那段 JS 放到 body 标签里面的底部,或者在 DOMContentLoaded 或者 load 事件后去触发函数执行,以确保需要的 DOM 元素渲染完毕。
把你script代码换一个位置,放到你p片段的后面,建议是在</body>之前,个人觉得放在</body>之后看起来更好些。
还有,如果仅仅是获取内层p的话,可以使用children:
document.getElementById('s').children
你这里 DOM 操作的语法是没有问题的,问题在于,你这段 JS 位于 head 中,意味着执行的时候 DOM 结构还没渲染完成,意味着你期望获取的节点还没被渲染出来,所以 DOM 操作无法获取到那个 id 的节点,所以返回 null,所以第二个 DOM 操作报错。
处理方式:把那段 JS 放到 body 标签里面的底部,或者在 DOMContentLoaded 或者 load 事件后去触发函数执行,以确保需要的 DOM 元素渲染完毕。
把你script代码换一个位置,放到你p片段的后面,建议是在</body>之前,个人觉得放在</body>之后看起来更好些。
还有,如果仅仅是获取内层p的话,可以使用children: