84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
刚接触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: