<html>
<head>
<title></title>
</head>
<body>
<div id="outer" style="background:#099">
click outer
<p id="inner" style="background:#9C0">click inner</p>
<br>
</div>
<script type="text/javascript">
function G(id){
return document.getElementById(id);
}
function addEvent(obj, ev, handler){
if(window.attachEvent){
obj.attachEvent("on" + ev, handler);
}else if(window.addEventListener){
obj.addEventListener(ev, handler, false);
}
}
function test(e){
alert("e.target.tagName : " + e.target.tagName + "\n e.currentTarget.tagName : " + e.currentTarget.tagName);
}
var outer = G("outer");
var inner = G("inner");
//addEvent(inner, "click", test);
addEvent(outer, "click", test);
</script>
</body>
</html>
分享到:
相关推荐
每个事件都包含一些关键属性,如`type`(事件类型)、`target`(事件目标)、`currentTarget`(当前处理事件的对象)以及` bubbles`(是否冒泡)等。这些属性在事件处理函数中可以用来获取更多信息。 5. **...
function Event(a,b,c){this.type=a,this.target=null,this.currentTarget=null,this.eventPhase=0,this.bubbles=!!b,this.cancelable=!!c,this.timeStamp=(new Date).getTime(),this.defaultPrevented=!1,this....
在传统的JavaScript中,拖放功能可以通过原生的拖放API(Drag and Drop API)实现,而Vue.js通过提供指令和绑定事件的方式简化了这一过程。 在上述实例中,可以看到实现拖放功能涉及的几个关键知识点: 1. 使用v-...
:target1.9+ 内容 :contains(text) :empty :has(selector) :parent 可见性 :hidden :visible 属性 [attribute] [attribute=value] [attribute!=value] [attribute^=value] [attribute$=value] ...
56. **AJAX(Asynchronous JavaScript and XML)**:一种在后台与服务器交换数据并更新部分网页的技术,无需重新加载整个页面。 57. **创建对象**:通过对象字面量 `{}`、构造函数或 `Object.create()` 创建对象。 ...