事件冒泡

有时候事件的冒泡问题还是挺隐蔽的:

 $("<li></li>")

                    .append(" <a href='javascript:void(0)' id='"+menu_list[menu].weight+"' title='"+menu_list[menu].name+"' onclick='clickLeafNode("+ menu_list[menu].id+ ")' style='width:50px;text-decoration:none'>" 

                    + "<font size='2' id='"+menu_list[menu].weight+"' color='black'>"+ menu_list[menu].name+"</font>"

部分代码可以看出,a里有font。

响应事件的代码有这么一句:var obj = event.srcElement;最终obj拿到的是font对象

如果阻止font的onclick事件传播,可以如下:

//IE阻止事件冒泡的机制

window.event.cancelBubble = true; 

这个时候a的onclick事件被并屏蔽,这不是我们要的

这个时候我们可以将部分需要的数据除了放在a的属性里,也可以将数据放到font的属性里。那么数据就可以给到我们的代码里 了

猜你喜欢

转载自zengshaotao.iteye.com/blog/2318429
今日推荐