js 事件监听

最近在看zepto的源码在看的过程中,对于js事件监听一直云里雾里的,打算整理成文。


首先拿 key events and characters练习。

html

<div>
    <input type="text" id="textBox"/>
    <p></p>
</div>

javascript

    function init() {
        var inputElement = document.getElementById('textBox'),
                pElement = document.getElementsByTagName('p')[0];
        inputElement.addEventListener('keydown', function () {
            pElement.textContent = inputElement.value.length;
        });
    }

    window.addEventListener('load', init, false)

效果
http://codepen.io/Yunkou/full/KtdwC/

在整个过程中(没有涉及到IE兼容),其实addEventListener三个参数中,前两个好理解,那么问题来了 false 做如何理解呢?

第二话 addEventListenerの第三个参数

element.addEventListener(event, function, useCapture)

这个useCapture到底是个什么货。

第一个参数是需要绑定的事件,第二个参数是触发事件后要执行的函数。而第三个参数默认值是false,表示在事件冒泡的阶段调用事件处理函数,如果参数为true,则表示在事件捕获阶段调用处理函数。举个栗子

那问题来了,到底啥是 时间冒泡和事件捕获?对于js小雏来说实在太难理解了。解惑js事件机制哪家强当然是 小胡子哥 [解惑]JavaScript事件机制
其实这篇也不错 但是稍微有点难度。

posted @ 2014-11-03 09:37  Yun.kou  阅读(348)  评论(0编辑  收藏  举报