Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何触发CSS“;“悬停状态”;使用Javascript?_Javascript_Html_Css_Browser - Fatal编程技术网

如何触发CSS“;“悬停状态”;使用Javascript?

如何触发CSS“;“悬停状态”;使用Javascript?,javascript,html,css,browser,Javascript,Html,Css,Browser,当用户将鼠标悬停在某个元素上时,将触发CSS的“悬停状态”: <style> .element{ } .element:hover{ background-color:red; } </style> .元素{ } .元素:悬停{ 背景色:红色; } 如何使用Javascript将元素设置为“悬停状态” 可能吗?如果您可以接受使用:focus而不是悬停,您可以使用: var links = document.getElementsByTagName('a')

当用户将鼠标悬停在某个元素上时,将触发CSS的“悬停状态”:

<style>
.element{

}
.element:hover{
    background-color:red;
}
</style>

.元素{
}
.元素:悬停{
背景色:红色;
}
如何使用Javascript将元素设置为“悬停状态”


可能吗?

如果您可以接受使用
:focus
而不是悬停,您可以使用:

var links = document.getElementsByTagName('a');
links[0].focus();

显然,这种方法需要调整CSS以包含
a:focus
样式:

a:link, a:visited {
    background-color: #fff;
}
a:hover, a:focus, a:active {
    background-color: #f00;
}

您最好将:hover样式复制到另一个类中,然后在希望它们永久更改时将该类名添加到元素中。伪类之所以“伪”是有原因的

好像你拿着锤子去粘那些看起来不是钉子的东西。你到底想做什么?比如你想什么时候触发它???@Balanivash:别担心。为什么他想自己触发悬停?为什么他不复制粘贴样式并使用element.className='newClass'?下面是我的用例:我使用DOM在WebSocket上镜像页面<代码>:hover状态不在DOM中,因此需要其他通用方法来处理它。@theu-drow,有一次旅行,但为什么要做这样的事情?@theu-drow:我完全不知道;但我怀疑这可能是为了在页面加载时显示/突出显示某些内容?当然,有更好的方法可以做到这一点,但如果没有进一步的信息,我只能尝试回答被问到的问题。遗憾的是,不管使用情况如何。答案很好,但问题是如何触发“:hover”,而不是“:focus”。@the_-drow:在创建组件演示页面时,这可能很有用,在该页面中,您希望在不同的状态下显示不同的按钮样式(中性、禁用、悬停、聚焦、活动).@the_drow这可以用于例如,当您希望通过DevTools快速自动化次要任务时,其中附加元素仅在悬停时显示/添加到DOM。这就是我现在正在做的,我正在寻找更好的替代方案。还有,哇。这是一个你正在从事的长期项目这不能解释。它回避了一个问题:为什么hover不是一个可信的事件?我不是W3C的成员,我只能冒险猜测一下,但《粉碎》杂志上的这篇文章()揭示了一点:当一个事件起源于设备本身,而不是从JavaScript中合成时,它被称为“可信”。您试图模拟悬停事件,而不是自然触发。当然,您可以模拟点击事件,而无需实际点击鼠标按钮,因此这显然不是一个硬性标准。显然,浏览器更宽容的是点击而不是悬停。确切地说,我们被允许称为“焦点”而不是“悬停”,这似乎是完全武断的。
a:link, a:visited {
    background-color: #fff;
}
a:hover, a:focus, a:active {
    background-color: #f00;
}