1
2
3
4
5
6
7
function insertEle() {
var oTest = document.getElementById("box-one")
var newNode = document.createElement("div")
var reforeNode = document.getElementById("p1")
newNode.innerHTML = " This is a newcon "
oTest.insertBefore(newNode,reforeNode.nextSibling)//新建的元素节点插入id为P1节点元素的后面。
}
第二种
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// 自定义函数向后插入
function insertAfter( newElement, targetElement)
{
var parent = targetElement.parentNode
if ( parent.lastChild == targetElement )
{
// 如果最后的节点是目标元素,则直接添加。因为默认是最后
parent.a( newElement )
}
else
{
//如果不是,则插入在目标元素的下一个兄弟节点的前面。也就是目标元素的后面
parent.insertBefore( newElement, targetElement.nextSibling )
}
}
自己把click处理方法绑定到div#aaa里,只要div#aaa里面有点击事件 这个事件就会冒泡冒上来。
这样做只需绑定一次就搞定了,不然每加个节点还要去设置onclick或绑定事件。。蛮烦!
绑定事件方法
//别告诉我你还在用IE8- IE8-只能用attachEvent相当不屑document.getElementById("aaa").addEventListener("click",function(e){},false)
//false好像是从里面往外面冒泡 p>div>..body..>window,true为从外面玩里面冒 window>..body..>div>p 貌似是这样
//function里可以定义处理方法了,第一个参数为事件对象event,e.target为点击的对象
function(e){
if(e.target.tagName=="P")//判断一下是不是P标签,有可能是div或其他里面的陌生标签
alert(e.target.id)//显示p的ID
}
id="" 放在 table 里,IE8不支持; 放在 tr 里,谷歌、IE6不支持; 只有放在 td 里,IE、谷歌、Firefox 才全部支持。 浏览器不兼容的问题,是由于微软自创的 JScript 不完全遵循 ECMAScript 的结果。而谷歌浏览器借鉴了IE6的内核,是同一水平的.欢迎分享,转载请注明来源:内存溢出
评论列表(0条)