前端开发那些事儿

dispatchEvent 学习

2021-06-24  本文已影响0人  今天也要努力好吗

1. createEvent(eventType)

参数:eventType 共5种类型:
        Events :包括所有的事件.
        HTMLEvents:包括 'abort', 'blur', 'change', 'error', 'focus', 'load', 'reset', 'resize', 'scroll', 'select', 'submit', 'unload'.事件
        UIEvents :包括 'DOMActivate', 'DOMFocusIn', 'DOMFocusOut', 'keydown', 'keypress', 'keyup'.间接包含 MouseEvents.
        MouseEvents:包括 'click', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup'.
        MutationEvents: 包括 'DOMAttrModified', 'DOMNodeInserted', 'DOMNodeRemoved', 'DOMCharacterDataModified', 'DOMNodeInsertedIntoDocument', 'DOMNodeRemovedFromDocument', 'DOMSubtreeModified'.

2. 在createEvent后必须初始化,为大家介绍5种对应的初始化方法

  1. HTMLEvents 和 通用 Events:
    initEvent( 'type', bubbles, cancelable )
  2. UIEvents :
    initUIEvent( 'type', bubbles, cancelable, windowObject, detail )
  3. MouseEvents:
    initMouseEvent( 'type', bubbles, cancelable, windowObject, detail, screenX, screenY,
    clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget )
  4. MutationEvents :
    initMutationEvent( 'type', bubbles, cancelable, relatedNode, prevValue, newValue,
    attrName, attrChange )

3. 在初始化完成后就可以随时触发需要的事件了

targetObj.dispatchEvent(event)
使targetObj对象的event事件触发
需要注意的是在IE 5.5+版本上请用fireEvent方法,还是浏览兼容的考虑

4. 更多

不过这个好像已经废弃了,现在推荐Eevent构造函数,查看有关Event的WebAPI,但是 Event构造函数不兼容IE,所以如果要兼容IE的话还是离不开上面的那个

上一篇下一篇

猜你喜欢

热点阅读