这一步不通过 function insertAfter(newElement,targetElement){
var parent=targetElement.parentNode;
if(parent.LastChild == targetElement){
parent.appendChild(newElement);
}else{
parent.insertBefore(newElement,targetElement.nextSiling);
}
}
function creatediv(){
var faxtagbox=document.getElementById("faxtag");
var faxli=faxtagbox.getElementsByTagName("li");
var showdiv=document.createElement("div");
//insertAfter(showdiv,faxli);
alert("test");
}
以上代码运行正常,但如果我把//insertAfter(showdiv,faxli);这行取消注释就不行了。。。大师们指点一下!!!
------解决方案--------------------
改这一行即可,取到的是数组,加上下标即可。
var faxli=faxtagbox.getElementsByTagName("li")[0]; ------解决方案--------------------
var faxli=faxtagbox.getElementsByTagName("li");
这个取到的是数组,如果数组的元素有多个,就不知道插到那个元素的前面,所以要指定下标。