页面有时候的使用场景需要手动控制某个元素响应点击事件,可以达到不直接点击元素来响应事件,这里可以使用element.dispatchEvent(),在使用element.dispatchEvent()派发事件前需要做两步操作。
一、创建事件MouseEvents()
var clickEvent = document.createEvent('MouseEvents')
使用document.createEvent()函数创建事件,内部参数有三个,HTMLEvents、MouseEvents、UIEvents,这里我们选择MouseEvent。
二、初始化事件initEvent()
clickEvent.initEvent('click', false, false)
对创建好的MouseEvents进行初始化事件,该方法有15个参数:
type [string]:触发的事件类型,如"click"bubbles [bool]:事件是否冒泡,一般设置为truecancelable [bool]:事件是否可以取消。一般设为true
更多请查阅js文档。
三、进行事件派发调用
element.dispatchEvent(clickEvent)
连起来使用
var clickEvent = document.createEvent('MouseEvents')clickEvent.initEvent('click', false, false)element.dispatchEvent(clickEvent)
封装成一个函数进行模拟点击操作。
如果觉得《js手动触发页面元素点击事件 程序触发 自定义点击事件模拟点击》对你有帮助,请点赞、收藏,并留下你的观点哦!