event.srcElement從字面上可以看出來有以下關(guān)鍵字:事件、源。意思就是:當(dāng)前事件的源。
我們可以調(diào)用他的各種屬性就像:document.getElementByIdx_x_x_x_x_x("")這樣的功能。
經(jīng)常有人問 firefox 下的 event.srcElement怎么用,在此詳細(xì)說明:IE下,event對象有srcElement屬性,但是沒有target屬性;Firefox下,event對象有target屬性,但是沒有srcElement屬性.但他們的作用是相當(dāng)?shù)?,即?/p>
firefox 下的 event.target = IE 下的event.srcElement。
解決方法:使用obj(obj = event.srcElement ? event.srcElement :event.target;)來代替IE下 的event.srcElement或者Firefox下的event.target。
例一:
<div id="div_001">
<formid="form_001">
<inputtype="button" id="button_001_id" name="button_001_Name"value="單擊查看"
onclick="Get_srcElement(this)">
</form>
</div>
<script>
function Get_srcElement(obj)
{
var srcElement = "";
srcElement = srcElement + "n" +"event.srcElement.objectId : " + obj.id;
srcElement = srcElement + "n" +"event.srcElement.objectTagName : " + obj.tagName;
srcElement = srcElement + "n" +"event.srcElement.type : " + event.srcElement.type;
srcElement = srcElement + "n" +"event.srcElement.value : " + event.srcElement.value;
srcElement = srcElement + "n" +"event.srcElement.name : " + event.srcElement.name;
srcElement = srcElement + "n" +"event.srcElement.className : " +
event.srcElement.className;
srcElement = srcElement + "n" +"event.srcElement.parentElement.id : " +
event.srcElement.parentElement.id;
srcElement = srcElement + "n" +"event.srcElement.getAttribute : " +
event.srcElement.getAttribute;
alert(srcElement);
}
</script>
從例一可以看出event.srcElement跟傳過來的obj對象是一樣的。
例二:
<select name="selectname"onchange="alert(event.srcElement.options
[event.srcElement.selectedIndex].value)">
<optionvalue="001">1</option>
<optionvalue="002">2</option>
<optionvalue="003">3</option>
<optionvalue="004">4</option>
<optionvalue="005">5</option>
</select>
從例二可以看出event.srcElement就是select控件本身,所以把event.srcElement去掉,直接寫成options[selectedIndex].value也是一樣的。
例三:
<div onclick = "Get_srcElement()">
<div id = "001" style ="border:1px solid red; width:100%;height:500px">
<span id="node001">這是第1結(jié)點(diǎn)div001<span>
<div id = "002" style = "border:1px solid red;width:80%; height:300px">
<span id ="node002">這是第2結(jié)點(diǎn)div002<span>
<div id = "003" style = "border:1px solid red;width:50%; height:200px">
<span id ="node003">這是第3結(jié)點(diǎn)div003<span>
</div>
<divid = "004" style = "border:1px solid red; width:50%;height:200px">
<span id ="node003">這是第4結(jié)點(diǎn)div004<span>
</div>
</div>
</div>
<script>
functionGet_srcElement()
{
var srcElement = "";
srcElement = srcElement + "n" +"event.srcElement.children[0].tagName: " +
event.srcElement.children[0].tagName;
srcElement = srcElement + "n" +"event.srcElement.firstChild.id : " +
event.srcElement.firstChild.id;
srcElement = srcElement + "n" +"event.srcElement.lastChild.id : " +
event.srcElement.lastChild.id;
alert(srcElement);
}
</script>
</div>
這個(gè)例子對理解event.srcElement是最有利的,例子中一共有3層DIV,鼠標(biāo)點(diǎn)擊哪層DIV,event.srcElement就代表哪個(gè)DIV的對象。
原帖地址:http://blog.sina.com.cn/s/blog_4f925fc30100gic6.html
愛華網(wǎng)



