js 模拟点击事件

article/2025/10/25 11:39:00

1、element.click()

2、jquery $(element).click()或者trigger()该方法只会触发onclick的方法,如a点击跳转href 需要$(a)[0].click()

3、mouseEvent

event = new MouseEvent(typeArg, mouseEventInit)

typeArg

DOMString 格式的事件名称。

mouseEventInit 可选 具体参数查考https://developer.mozilla.org/zh-CN/docs/Web/API/MouseEvent/MouseEvent

eg:event = new MouseEvent('click');document.getElementsByTagName('a').dispatchEvent(event)

4、createEvent 处理mouseEvent的兼容 

tips:不要再用此方法,已过时。

使用特定的事件构造器来替代它,像 MouseEvent()创建并发送事件 页面里有更多的使用信息。

var event = document.createEvent(type);

创建一个指定类型的事件。其返回的对象必须先初始化并可以被传递给 element.dispatchEvent。

  • event 就是被创建的 Event 对象.
  • type 是一个字符串,表示要创建的事件类型。事件类型可能包括"UIEvents""MouseEvents""MutationEvents", 或者 "HTMLEvents"。 

初始化方法:

event.initMouseEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY,
                     ctrlKey, altKey, shiftKey, metaKey,
                     button, relatedTarget);参数对一个mouseEvent中的

type

设置事件类型type 的字符串,包含以下几种鼠标事件:click,mousedownmouseupmouseovermousemovemouseout

canBubble

是否可以冒泡。取值集合见Event.bubbles

cancelable

是否可以阻止事件默认行为。取值集合见Event.cancelable

view

事件的AbstractView对象引用,这里其实指向window 对象。取值集合见 UIEvent.view

detail

事件的鼠标点击数量。取值集合见Event.detail

screenX

事件的屏幕的x坐标。取值集合见MouseEvent.screenX

screenY

事件的屏幕的y坐标。取值集合见MouseEvent.screenY

clientX

事件的客户端x坐标。取值集合见MouseEvent.clientX

clientY

事件的客户端y坐标。取值集合见MouseEvent.clientY

ctrlKey

事件发生时 control 键是否被按下。取值集合见MouseEvent.ctrlKey

altKey

事件发生时 alt 键是否被按下。取值集合见MouseEvent.altKey

shiftKey

事件发生时 shift 键是否被按下。取值集合见MouseEvent.shiftKey

metaKey

事件发生时 meta 键是否被按下。取值集合见MouseEvent.metaKey

button

鼠标按键值 button

relatedTarget

事件的相关对象。只在某些事件类型有用 (例如 mouseover ?和 mouseout)。其它的传null。

事件模块传递给 createEvent的Event type事件初始化方法
DOM Level 2 Events
User Interface event module"UIEvents"event.initUIEvent
Mouse event module"MouseEvents"event.initMouseEvent
Mutation event module"MutationEvents"event.initMutationEvent
HTML event module"HTMLEvents"event.initEvent
DOM Level 3 Events
User Interface event module"UIEvent""UIEvents"event.initUIEvent
Mouse event module"MouseEvent""MouseEvents"event.initMouseEvent
Mutation event module"MutationEvent""MutationEvents"event.initMutationEvent
Mutation name event module (not implemented in Gecko as of June 2006)"MutationNameEvent"event.initMutationNameEvent
Text event module"TextEvent" (Gecko also supports "TextEvents")event.initTextEvent (not implemented)
Keyboard event module"KeyboardEvent" (Gecko also supports "KeyEvents")event.initKeyEvent (Gecko-specific; the DOM 3 Events working draft uses initKeyboardEvent instead)
Custom event module"CustomEvent"event.initCustomEvent
Basic events module"Event" (Gecko also supports "Events")event.initEvent
SVG 1.1 Scripting
SVG"SVGEvents" (Gecko also supports "SVGEvent")event.initEvent
"SVGZoomEvents" (Gecko also supports "SVGZoomEvent")event.initUIEvent
 

 

自定义事件

// 创建事件
var event = document.createEvent('Event');// 定义事件名为'build'.
event.initEvent('build', true, true);// 监听事件
elem.addEventListener('build', function (e) {// e.target matches elem
}, false);// 触发对象可以是任何元素或其他事件目标
elem.dispatchEvent(event);

http://chatgpt.dhexx.cn/article/fkq9TN90.shtml

相关文章

windows修改hostname

修改文件:C:\Windows\System32\drivers\etc\hosts,增加红框部分:

修改host文件

1、进入host文件下 地址:C:\Windows\System32\drivers\etc 2、把host文件移动到桌面再修改内容 3、保存后,再拖动到C:\Windows\System32\drivers\etc目录下

修改主机名(/etc/hostname和/etc/hosts区别)

ubuntu永久修改主机名 1、查看主机名 在Ubuntu系统中,快速查看主机名有多种方法: 其一,打开一个GNOME终端窗口,在命令提示符中可以看到主机名,主机名通常位于“”符号后; 其二,在终端窗口中输入…

wsl 修改 hostname

我在使用Windows 的 wsl 功能的时候发现在默认情况下 wsl 的 hostname 是和当前 windows 系统的主机名称保持一致的。当我尝试使用 hostname 修改主机名时,发现并不能完全修改,在重新进入后又会恢复成原来的样子。经过不停的查找,终于找到了能…

Linux如何修改主机名hostname(修改用户名@后面的virtual machine)

在ubuntu中,关于主机名的文件存放在/etc/hostname文件下,具体的操作流程如下。 1、打开虚拟机终端,输入命令:vi /etc/hostname,进入文件,如下图所示。 vi /etc/hostname 2、主机名默认为virtual machine…

python网课推荐-python网课什么平台好

学习计算机方面的网络课程当然要听听行业标杆谷歌怎么说。谷歌公司为了指导新鲜的程序猿们快速入行,开了一份网络课程学习清单Google Technical Development Guide。这份课程清单真是简洁清晰明了,自从有了它,再也不用担心没有网课学习了。 话…

免费学python的网课-像玩游戏一样学Python,和各种网课说再见

原标题:像玩游戏一样学Python,和各种网课说再见 Python有多火,已经不用我多说了。 爬虫、大数据、人工智能、3D游戏开发......Python无所不能。 ▲Python的应用 但很多同学还是会说,入门Python好难啊。网上的教程都各种混乱&am…

python免费网课-python网课资源

广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 对于有志学习python的开发者来说,python吸引人的地方不仅是有一个优秀的社区,而且…

python大学课程-Python 爬取中国大学 MOOC 课程

中国大学 MOOC 是网易旗下一款慕课视频教育网站。实话说,这是网易几款教育类产品中,我最喜欢的一个。自己也使用了一年多,观看视频都是需要联网的,但部分 MOOC 课程存在有效期,设定的学期结束即无法观看。 Course Cra…

腾讯课堂Python课程哪家强?

腾讯课堂Python课程哪家强? 文章目录 腾讯课堂Python课程哪家强?一、前言二、数据读取和数据预处理1、数据读取2、数据处理 三、有多少人愿意花钱学Python?四、多少价位的课买的人最多?五、哪家机构的课最多?销量最好&…

python第一记,长江雨课堂抓包刷课实战

前言 发现大学群里好多代刷网课的,确实觉得好多大学网课好费时间,而且没啥用,刚好用来实战一下学的Python,就当练手了。省下来的时间不是又能多敲几行代码😃​一边省时间,还能学技能,这还不学起…

在哪能免费学习python

1、中国大学MOOC 课程很多都是高校开设的,比较推荐南京大学的《用python玩转数据》,从最基础的开始讲,由深入浅,非专业的伙伴也可以听懂。(文末送福利) 2、Python中文学习大本营 所有学习资料和教程都是…

python-seleium实现珞珈在线网课辅助观看功能

《武汉大学安全教育前置课程》网课观看辅助.py脚本 即将来到珞珈山的萌新们,在到校前,你是不是需要完成《武汉大学安全教育前置课程》?视频好多,一个一个来点击观看是不是有些疲累?快来看看这个脚本叭! 本…

python 课程学习

文章目录 目录 文章目录 前言: 一、安装anconda软件​二、使用步骤 2.1.询物理地址 2.2:复制讲义到该文件地址 2.3:OS模块学习 2.3.1 创建地址采用 os.mkdir() 2.3.2 python os.path 的使用 Python os.path() 模块 | 菜鸟教程 (runo…

免费python网络课程-python网络课程

广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! machine learning course with pythonby machine learningmindset简介本项目的目的是提供一个全面而简单…

python免费课程全套-为了学习Python,我汇总了这10个免费的视频课程!

毫无疑问,Python是目前世界上***的编程语言,它***的优势在于它将越多越多的人带入了编程领域。 近年来,学习Python的人比学习其他任何语言的人都多,许多人学Python是为了它背后的数据科学和机器学习库,当然,也有一些人学习用于Web开发的Python,有些人则学习用于编写脚本…

全套Python课程~

今天是元宵节,元宵节过后很多朋友就要开学啦~提前祝大家开学快乐! 今天给大家分享一套详细全面的Python系统课程,总共有637集,从入门到精通。大家可以先收藏下开学后后慢慢学! 【Python基础】Python_PYTHON入门_零基础…

Python进阶——网课不愁系列AI换脸技术

俗话说的好:网络一线牵,珍惜这段缘! 网络的水很深,年轻人你把握不住,众所周知照片是可以P的,但是“视频”是“P”不了的(狗头保命) 谁能想到AI换脸竟然如此便捷,在Python…

Python开发的Web在线学习教育培训网课系统

目 录 摘 要 I Abstract II 第1章 绪论 1 1.1 课题研究背景 1 1.2 课题研究目标与意义 2 1.3 课题研究内容及思路 2 第2章 系统需求分析 4 2.1系统的性能要求 4 2.2系统功能需求分析 4 2.2.1功能划分 4 2.2.2功能描述 7 2.3技术可行性分析 9 2.4相关技术简介 10 2.4.1 B/S体系相…

自学python哪个网课好,网课学python学的好吗

Python可以自学吗?有哪些不错的网课? 可以自学的,需要依据每个人的情况来决定,想要自学python对各方面有一定要求的,比如说基础好、自学能力强、理解能力强,这种情况是可以选择自学python的;相…