Javascript 问题,给LI标签添加一个Onclick事件后,如何辨别点击了li中哪个元素?

<li onclick = 'clickLi()'>
<input type='checkbox' />
<a>This link.</a>
<p>Text</p>

</li>
----js-----
function clickLi()
{
//用户无论点击LI标签内什么地方都会回调此函数,请问在这里如何判断是点击了A标签,还是INPUT标签,或是其他标签?

}

第1个回答  推荐于2016-05-17
function clickLi(e)
{ //兼容ie 火狐 chrome

e = e || window.event;
e.target = e.target || e.srcElement;
alert(e.target.nodeName);
}追问

方法不错,等下试试,非常感谢。

追答

好用的话 选我为最佳答案。

本回答被提问者和网友采纳
第2个回答  2012-08-09
<script language="javascript" type="text/javascript">
$(document).ready(function () { $("#li1").children().click(function () { clickLi(this); }) });
function clickLi(t) {
alert($(t).attr("tagName"));
}
</script>

<li id="li1">
<input type='checkbox'/>
<a >This link.</a>
<p>Text</p>
</li>追问

我也用JQ,不过这样给每个子元素加一个事件函数效率是否太低了呢?

追答

我的jquery功底不好,只能想到这个办法了

相似回答