事件源event.target
今天在了解检测浏览器是否能播放不同类型的视频时发现以下代码
<script> function supportType(e,vidType,codType) { myVid=document.createElement('video'); isSupp=myVid.canPlayType(vidType+';codecs="'+codType+'"'); if (isSupp=="") { isSupp="No"; } e.target.parentNode.innerHTML="Answer: " + isSupp; } </script>
其中对e.target.parentNode.innerHTML这一句不是很了解(JS渣。。。)
觉得target不是设置A连接的打开方式的那个东西,结果查了下资料才发现这是表示当前的事件源,也就是说引发这个事件的源头对象。
这样解释就能理解了。另外了解到这是在FF下的表示方法,IE下是event.srcElement,我测试过在最新的版本是已经都支持的,但IE9,IE8,IE7这些还是要用event.srcElement.
所以用到这个属性时最好还是做个兼容性判断发取用方法:
obj(obj = event.srcElement ? event.srcElement : event.target;)