在 JavaScript 中模拟鼠标悬停:CSS :hover 的挑战
尝试在 JavaScript 中模拟鼠标悬停事件以激活 CSS ":hover"财产可能具有挑战性,如下所示查询:
问题:
我一直在尝试使用 Chrome 中的鼠标悬停侦听器来模拟鼠标悬停事件,而触发侦听器时,:hover 声明仍然存在。我尝试手动添加“悬停”类,但它未能改变元素的外观是否可以完成。这个?
答案:
不幸的是,这个方法是不可能的。鼠标悬停不是可信事件。
由用户代理生成的事件(无论是作为用户交互的结果还是作为 DOM 更改的直接结果)是由脚本使用 DocumentEvent.createEvent("Event") 方法生成的事件,Event 是可信事件具有未授予使用 .initEvent() 方法修改的事件或使用 EventTarget.dispatchEvent() 方法调度的事件的权限。可信事件的 isTrusted 属性值为 true,不可信事件的 isTrusted 属性值为 false。
大多数不受信任的事件不会触发默认操作,但单击或 DOMActivate 事件除外。
所以你必须手动添加和删除 mouseover/mouseout 事件中的类。
以上是JavaScript 可以可靠地模拟 CSS :hover 效果吗?的详细内容。更多信息请关注PHP中文网其他相关文章!