- What is the difference between event handler and event listener?
Event Listener:通过 addEventListener() 注册,对特定事件(如
click)“监听”(listen),可以添加多个监听函数。
Event Handler:是具体的执行函数,也常以 HTML 属性或 element.onclick = ... 的形式定义,通常是一个元素每种事件只能有一个处理函数。
- How to add an event handler to an element?
1. DOM属性:element.onclick = function(event){};
2. 事件监听器: element.addEventListener('click', function(event) { });
3. HTML 属性:<button onclick="handleClick()"> button </button>
- What is the event bubbling and capturing phases?
event bubbling: 捕获阶段(Capturing):事件从根元素(如 document)向下传递,直到到达目标元素;
目标阶段(Target):事件到达目标元素,此时会触发绑定在此元素上的 handler。
event bubbling: 事件从目标元素返回向上父节点,执行监听器(默认阶段)。