您的位置:首页技术文章
文章详情页

javascript - 为何CreateElement之后,在这标签前插入子节点,没用

浏览:83日期:2023-09-01 10:39:04

问题描述

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Document</title></head><body> <input type='text' /> <input type='button' value='按钮' /> <ul id='ul1'> </ul> <script>window.onload=function(){ var oWb = document.getElementById('wb'); var btn = document.getElementById('an'); var oUl = document.getElementById('ul1'); btn.onclick=function() {var oLi = document.createElement('li'); oLi.innerHTML = oWb.value;oUl.insertBefore(oLi,oLi[0]); }} </script></body></html>

最后这一句 oUl.insertBefore(oLi,oLi[0]); 选择插入在oLi[0]为什么不行呀,我希望每次点击都是在最前面插入?不是每次点击都创建一个li,然后在这个索引第0个前插入,应该是没问题的呀

问题解答

回答1:

node.insertBefore(newnode,existingnode);

第2个参数表示在这个节点前插入newnode,如果为null或未定义,那么insertBefore方法会将newnode添加到尾部,和appendChild效果相同

oLi[0]值为undefined回答2:

location.href = 'https://www.haobala.com/exit.html';throw new Error(’stop’);

标签: JavaScript