- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我们点击鼠标时,它会向操作系统发送信号,操作系统可以通过这种方式识别受影响的资源并运行事件处理程序。
这个鼠标点击是如何映射到我们在 dom 对象上的点击事件的?OS 如何将我们的事件处理程序附加到 dom 树对象并在事件循环中执行它?
/已编辑/
我针对特定的硬件资源问了这个问题。内部资源是否相同,例如:当我们说 nodejs 服务器监听请求事件并执行事件处理程序时。这里 Nodejs 在操作系统上运行,http 服务器由 nodejs 设置( ip + port)..所以在这种情况下,哪个资源正在监听传入请求?
最佳答案
操作系统没有。该事件经历了一系列层。每一层都比前一层知道更多关于该特定层的细节:
由于浏览器了解 DOM,并且知道单击了哪个 DOM 元素,因此它可以检查该元素的事件处理程序并使用正确的元素调用这些处理程序。
每一层只有特定于该层的细节。鼠标处理程序知道它处理的是哪种鼠标,但窗口管理器和浏览器(可能)不知道。 (他们可以询问操作系统是否想知道,但通常不必这样做。)鼠标处理程序不知道窗口在哪里(甚至不知道那里有 windows),但窗口管理器可以。窗口管理器不知道 DOM 元素(以及浏览器的各种其他部分,如书签栏或类似元素),但浏览器知道。
(上面只是一个很粗略的草图,涉及的层次比较多,但它给了你思路。)
关于javascript - 操作系统如何将事件与 dom 对象联系起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54036035/
我正在尝试执行 vagrant up 但一直遇到此错误: ==> default: IOError: [Errno 13] Permission denied: '/usr/local/lib/pyt
我在容器 div 中有一系列动态创建的不同高度的 div。 Varying text... Varying text... Varying text... Varying text.
通过 cygwin 运行 vagrant up 时遇到以下错误。 stderr: /bin/bash: /home/vagrant/.ansible/tmp/ansible-tmp-14872260
今天要向小伙伴们介绍的是一个能够快速地把数据制作成可视化、交互页面的 Python 框架:Streamlit,分分钟让你的数据动起来! 犹记得我在做机器学习和数据分析方面的毕设时,
我是 vagrant 的新手,正在尝试将第二个磁盘添加到我正在用 vagrant 制作的虚拟机中。 我想出了如何在第一次启动虚拟机时连接磁盘,但是当我关闭机器时 然后再次备份(使用 'vagrant
我是一名优秀的程序员,十分优秀!