如果浏览器原生事件不满足需求,可以自行扩展。

我们提供了一个 Yox.dom.specialEvents 特殊事件集,绑定事件时,会优先从特殊事件集读取,正因为如此,我们改进了 input 事件,当中文输入法正在输入时,不会触发 input 事件。

通常来说,大部分人都有去实现 tap 事件的需求,下面给一个简单的例子(仅用于演示,不要用于产品环境...):

Yox.dom.specialEvents.tap = {
    on: function (element, listener) {
        Yox.dom.on(
            element,
            isMobile ? 'touchstart' : 'click',
            listener
        );
    },
    off: function (element, listener) {
        Yox.dom.off(
            element,
            isMobile ? 'touchstart' : 'click',
            listener
        );
    }
};

接下来,我们就可以用 tap 事件了。

<button on-tap="submit()">
   Submit
</button>

results matching ""

    No results matching ""