相关疑难解决方法(0)

如何在纯JavaScript中模拟鼠标悬停以激活CSS":hover"?

我一直试图找到mouseover在Chrome中模拟的代码,但即使"mouseover"监听器被触发,CSS"悬停"声明也永远不会被设置!

我也尝试过:

//Called within mouseover listener
theElement.classList.add("hover");
Run Code Online (Sandbox Code Playgroud)

但似乎没有任何东西可以将元素更改为其hover声明中声明的内容.

这可能吗?

javascript css jquery

67
推荐指数
5
解决办法
5万
查看次数

在JavaScript中以编程方式触发onmouseover事件

有没有办法以onmouseover简单的JavaScript 以编程方式触发事件?或者从onmouseover事件"提取"方法直接调用它?

例如

<div id="bottom-div" onmouseover="myFunction('some param specific to bottom-div');">
    <div id="top-div" onmouseover="????????"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

top-div高于bottom-div,因此onmouseover不会在bottom-div中触发.我需要一种myFunction('some param specific to bottom-div');从top-div 调用的方法

javascript onmouseover dom-events

28
推荐指数
7
解决办法
6万
查看次数

以编程方式触发悬停css伪类

我需要以编程方式触发悬停伪类(如果可能的话冒泡,或者我也将被迫调用所有元素父变换).我没有对html页面的控制,所以我无法更改css:hover to .hover以便将HTMLElement的类更新为.hover.

那可能吗?

请不要发表评论.我不能在我的项目中使用JQuery.

先感谢您.

UPDATE

我已经为CSS加载创建了一种代理,所以现在在加载css之前,它会传递我的"代理",它会改变规则:hover to .hoverclass.

好吧,现在悬停效果非常好,但由于悬停的冒泡模拟,我有一些严重的性能问题.

这是一些代码:

var actualHoveredElements = new Array();
var hoverAddedCount = 0;
var maxHoveredElems = 5;

function changeHover(newElement, oldElement){
    var oldHoveredElements = actualHoveredElements.slice();

    var remainingElements = setHoverForParentsOfElement(newElement, oldHoveredElements);

    for(var i = 0; i < remainingElements.length; i++){
        var notHoveredElement = remainingElements[i];
        var actualIndex = actualHoveredElements.indexOf(notHoveredElement);

        if(actualIndex > -1){
            actualHoveredElements.splice(actualIndex, 1);
        }
        notHoveredElement.classList.remove("hoverclass");
    }

    hoverAddedCount = 0;
    changeHoverTimeout = null;
}


function setHoverForParentsOfElement(element, oldHoveredElements){
    var index = -1;

    if(oldHoveredElements != "undefined" && oldHoveredElements.length …
Run Code Online (Sandbox Code Playgroud)

javascript css

9
推荐指数
2
解决办法
1509
查看次数

克隆CSS类

我想将所有:hover类复制到.hoverid类中,其中id元素的索引(或任何其他方式来创建unqiue悬停类名称).

所以,我的想法是以某种方式遍历页面上的所有元素,这些元素已经:hover定义并克隆了该类.hoverid.这样我可以触发我想要的任何元素上的悬停效果:

$('#element').addClass('hover'+$(this).id);
Run Code Online (Sandbox Code Playgroud)

所以我的问题实际上是:

  1. 如何迭代定义了":hover"的元素?
  2. 如何将该类克隆到另一个类?

小提琴试试你的解决方案:http://jsfiddle.net/kLt2P/

javascript css jquery

6
推荐指数
1
解决办法
1815
查看次数

使用JQuery悬停项目

有没有办法使用javascript悬停元素?我不想创建另一个类,我只是想在我的鼠标指针不在该元素上时使元素悬停在javascript上.

例如,我有5个具有相同类的元素,当我们其中一个实际悬停时,我想在所有这些元素上调用悬停.

javascript jquery hover

5
推荐指数
1
解决办法
2万
查看次数

使用js触发css:hover事件

我有<div class="animate">和在css:

div.animate:hover{
//do stuff
}
Run Code Online (Sandbox Code Playgroud)

但是也想通过javascript调用它.

可能吗?

html javascript css

5
推荐指数
2
解决办法
2万
查看次数

有什么方法可以在开发人员工具中模拟onmouseover吗?

我知道Firefox提供了一种模拟悬停,活动和焦点过滤器的方法。

在此处输入图片说明

有什么方法可以模拟onmouseover高程?

我想一起模拟两个元素,这可能吗?

我没有为此目的找到任何扩展。先感谢您。

javascript firefox onmouseover firefox-developer-tools

5
推荐指数
2
解决办法
1397
查看次数

dispatchEvent'mouseover'无效

我有以下代码http://jsfiddle.net/yc7sj3pt/2/

document.getElementById('obj_one').addEventListener('mouseover', function(){
    var e = document.createEvent('HTMLEvents');
    e.initEvent('mouseover', true, false);

    document.getElementById('obj_two').dispatchEvent(e);
    console.log('hover');
}, false);
Run Code Online (Sandbox Code Playgroud)

#obj_two当我mouseover打开时#obj_one,我正试图做出反应悬停(因此变为红色),但它无法正常工作.我究竟做错了什么?

javascript events

3
推荐指数
1
解决办法
2820
查看次数