event.srcElement与event.target

来源:互联网 发布:国家软件资格考试认证 编辑:程序博客网 时间:2024/06/11 19:24
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">    <!--       window.event 对象       firefox 没有window.event 对象,可以通过函数的参数传递event对象, 例如:onmousedown=function(event)        解决方法 var e =window.event||event;      event.srcElement 和event.target       IE :有srcElement属性,没有target属性      firefox: 有target 属性,没有srcElement属性      event.srcElement 和event.target的作用是一样的,<[获取事件作用的元素:: ]>      IE 下的event.srcElement =firefox 下的event.target      兼容方法: obj =event.srcElement ?event.srcElement :event.target;            <[ nodeType 属性返回被选节点的节点类型]>      <[ reference:http://www.w3school.com.cn/jsref/dom_obj_event.asp]>      1     Element       2     Attribute       3     Text       4     CDATA Section       5     Entity Reference       6     Entity       7     Processing Instrucion       8     Comment       9     Document       10    Document Type       11    Document Fragment       12    Notation       -->  </head>    <script type="text/javascript">    function eventLoc()    {       var targ;       if (!e)       {          var e = window.event||event;          if(e.target)          {             targ = e.target;          }           else if (e.srcElement)           {             targ = e.srcElement;          }       };       if (targ.nodeType == 3)       {            // nodeType==3代表<[node.text_node]>           targ =targ.parentNode;       };       var tname, tText, tId,nodeTypeNum;       tname = targ.tagName;       tText = targ.value;       tId = targ.id;       nodeTypeNum = targ.nodeType;       alert("you clikced on a " + tname + " element and its value is: ->" +               tText + "its id is ->" +tId +":"+nodeTypeNum);    }           function eventTar()    {       var targ;       if (!e)       {           var e=window.event||event;           var obj=e.srcElement ?e.srcElement :e.target;           targ = obj;       };       // <[onfocus 作用的元素是文本节点 ]>       if (targ.nodeType == 3)       {           targ =targ.parentNode;       };       var tname;       tname = targ.tagName;       alert(tname+" element was clicked");    }     </script>  <body>    if语句: <input type="text" id="eventLoc" name="eventLoc" onfocus="javascript:eventLoc();" value="ok">    三元式:  <input type="text" id="eventLoc" name="eventLoc" onfocus="javascript:eventTar();" value="event_works">  </body></html>

event

<%@ page language="java" import="java.util.*" pageEncoding="gbk"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>"><!--<link rel="stylesheet" type="text/css" href="styles.css"><[reference: http://www.w3school.com.cn/htmldom/index.asp]><[reference: https://developer.mozilla.org/zh-CN/docs/Web/API/Element.tagName]><[reference: http://blog.csdn.net/nanshan_hzq/article/details/7160930]> parent.parent.frames("treeFrame").location.reload(); -->   <script type="text/javascript">    function getBtnIndex(indexList)   {    var srcIndex = -1;    for (var i = 0; i < indexList.length; i++)    {         var targ;         if (!e)         {           var e=window.event||event;           var obj=e.srcElement ?e.srcElement :e.target;           targ = obj;         };                 if (indexList[i] == targ)        {            srcIndex = i;            break;        }    }        return srcIndex;    }       function c_deleteTableRow()   {    var oTable = document.getElementById("frmTab");    var deleteBtn = document.getElementsByName("deleteBtn");var srcIndex = getBtnIndex(deleteBtn);        if(confirm("确定要删除该行吗?"))    {    oTable.deleteRow(srcIndex);           }    // 进行数据操作函数    // deleteDataFromDatabase();    // document.getElementById("params").value = params;    }    </script>  </head>    <body>     <table id="frmTab">         <tr><td style="color:red">第1行代码</td>         <td>         <input type="button" value="firstRow" id="deleteBtn1" name="deleteBtn" onclick="javascript:c_deleteTableRow();">         </td>         </tr>         <tr><td style="color:red">第2行代码</td>         <td>         <input type="button" value="secondRow" id="deleteBtn2" name="deleteBtn" onclick="javascript:c_deleteTableRow();">         </td>         </tr>         <tr><td style="color:red">第3行代码</td>         <td>         <input type="button" value="thirdRow" id="deleteBtn3" name="deleteBtn" onclick="javascript:c_deleteTableRow();">         </td>         </tr>     </table>  </body></html>


0 0
原创粉丝点击