(1) 首先要获得当前的event对象,
IE下实现起来比较的简单,直接使用window.event就可以了。
Firefox下是通过第一个参数传递的,这样通过函数的caller.arguments[0]也同样可以得到。
(2) 获得发生事件的对象
IE下是event对象的srcElement属性,Firefox下是 event对象的target属性。
下面是一个实现的例子
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>