您的位置:首页 > 其它

不使用参数获得被点击对象

2009-01-03 01:45 274 查看
(1) 首先要获得当前的event对象,
IE下实现起来比较的简单,直接使用window.event就可以了。
Firefox下是通过第一个参数传递的,这样通过函数的caller.arguments[0]也同样可以得到。

(2) 获得发生事件的对象
IE下是event对象的srcElement属性,Firefox下是 event对象的target属性。

下面是一个实现的例子
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
<script language="javascript">
function clickitem(){
var evt = window.event || clickitem.caller.arguments[0];
var srcEl = evt.target || evt.srcElement;
var oParNode = srcEl.parentNode;
var aLis = oParNode.getElementsByTagName("li");
var i, nLen = aLis.length, nIndex = -1;

for (i = 0; i < nLen; i++) {
if (aLis[i] == srcEl) {
nIndex = i;
break;
}
}
alert(nIndex);
}
</script>
</head>
<body>
<div id="unChosed">
<ul>
<li onclick="clickitem()">- A </li>
<li onclick="clickitem()">- B </li>
<li onclick="clickitem()">- C </li>
</ul>
</div>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: