srcElement 事件源(只适用于IE)

srcElement 是Dom事件中的事件最初指派到的元素。

 

比如有一个div,里面有一个按钮。你响应div的onclick事件,但实际上,你单击的只是它内部的按钮,那么,srcElement指向的,就是那个按钮。

srcElement只在IE中有效。

在Opera系列浏览器中对应的属性是target

给你一个IE下使用的例子。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "​​http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd​​​"><html xmlns="​​http://www.w3.org/1999/xhtml​​" ><head> <title>无标题页</title> <script type="text/javascript"> function onLoad() { document.getElementById( "myDiv" ).attachEvent( "onclick", on_myDivClick ); } function onUnLoad() { document.getElementById( "myDiv" ).detachEvent( "onclick", on_myDivClick ); } function on_myDivClick( e ) { if( !e ) e = window.event; alert( "event: " + e.type + ", fromElement = " + e.srcElement.id ); } </script></head><body οnlοad="onLoad()" οnunlοad="onUnLoad()"><div id="myDiv"> <input type="button" id="btn1" value="button1" /> <input type="button" id="btn2" value="button2" /></div></body></html>


Javascript event.srcElement

感觉这个挺好,可以捕获当前事件作用的对象,如event.srcElement.tagName可以捕获活动标记名称。
注意获取的标记都以大写表示,如"TD","TR","A"等。所以把看过的一些抄下来,不记得的时候再来看看。

<script type="text/javascript">
function tdclick(){
if(event.srcElement.tagName.toLowerCase()=='td')
alert("行:"+(event.srcElement.parentNode.rowIndex+1)+"列:"+(event.srcElement.cellIndex+1));
}
</script>

event.srcElement从字面上可以看出来有以下关键字:事件,源     他的意思就是:当前事件的源,

我们可以调用他的各种属性 就像:document.getElementById("")这样的功能,

经常有人问 firefox 下的 event.srcElement 怎么用,在此详细说明:

IE下,event对象有srcElement属性,但是没有target属性;Firefox下,event对象有target属性,但是没有srcElement属性.但他们的作用是相当的,即:

firefox 下的 event.target = IE 下的 event.srcElement

解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.

以下是几种常见到的情况(IE下测试通过,如要测试firefox下的event.target可以修改并保存代码后用firefox打开测试):


 

event.srcElement.X显示一个控件的各种属性

<div id="div_001">

    <form id="form_001">

        <input type="button" id="button_001_id" name="button_001_Name" value=" 单击查看" class="button_001_Class" οnclick="Get_srcElement(this)">

    </form>

</div>

<script>...

function Get_srcElement()

...{

var srcElement=""

srcElement = srcElement + " " +  "event.srcElement.id : " + event.srcElement.id

srcElement = srcElement + " " +  "event.srcElement.tagName : " + event.srcElement.tagName

srcElement = srcElement + " " +  "event.srcElement.type : " + event.srcElement.type

srcElement = srcElement + " " +  "event.srcElement.value : " + event.srcElement.value

srcElement = srcElement + " " +  "event.srcElement.name : " + event.srcElement.name

srcElement = srcElement + " " +  "event.srcElement.className : " + event.srcElement.className

srcElement = srcElement + " " +  "event.srcElement.parentElement.id : " + event.srcElement.parentElement.id

srcElement = srcElement + " " +  "event.srcElement.getattribute : " + event.srcElement.getAttribute

alert(srcElement)

}

</script>