使用JQueryhover项目
有没有办法使用javascripthover元素? 我不想创建另一个类,我只是想在我的鼠标指针不在该元素上时使元素hover在javascript上。
例如,我有5个具有相同类的元素,当其中一个元素实际hover时,我想在所有元素上调用hover。
我假设你的意思是伪类:hover
你已经与链接相关联(例如)。 当您将鼠标hover在该链接上时,您需要调用所有其他链接:hover
样式。
不幸的是,你不能从jQuery调用:hover
样式,这要求你实际上将鼠标指针移动到该元素上。 你必须使用类并利用jQuery的hover事件。
您可以通过在hover事件处理程序中同时处理集合中的所有项目来实现此目的
var items = $(".some-class-applied-to-many-different-items"); items.hover(function() { // Mouseover state items.addClass("blah"); // <- for example }, function() { // Mouseout state items.removeClass("blah"); });
如果我正确理解你的问题,你已经使用jQuery添加了一个hover
事件,并且你想要手动触发该事件而不管鼠标。
如果我理解正确,您需要调用mouseenter
来触发mouseenter
事件。
如果我理解不正确,你实际上有一个:hover
你想用Javascript触发的:hover
CSS规则,这是不可能的。
相反,您应该为规则添加一个类名(例如, something:hover, something.FakeHover { ... }
),并使用jQuery添加该类名。 (例如, $(...).addClass('FakeHover')
)。
在jQuery中, trigger
function允许您触发元素上的事件(包括mouseover
,我相信)。
在直接的JavaScript中,如果你已经为元素的事件处理程序分配了一个函数,你当然可以随时调用它。 例如
function mouseoverHandler() { // Do something } // Assign function to element's event handler document.getElementById('link1').onmouseover = mouseoverHandler // Call that function document.getElementById('link1').onmouseover();