Javascript 应用于两个DOM元素的mouseenter和leave
我有一个DOM元素,当鼠标悬停在上面时,应该将另一个DOM元素的不透明度设置为1。由于z顺序的原因,我不能嵌套第二个元素,但我希望交互,只要你覆盖任意一个DOM元素,它们就应该保持可见,但是如果你滚动掉任意一个元素,第二个元素应该将其不透明度设置为零Javascript 应用于两个DOM元素的mouseenter和leave,javascript,jquery,mouseevent,mouseenter,Javascript,Jquery,Mouseevent,Mouseenter,我有一个DOM元素,当鼠标悬停在上面时,应该将另一个DOM元素的不透明度设置为1。由于z顺序的原因,我不能嵌套第二个元素,但我希望交互,只要你覆盖任意一个DOM元素,它们就应该保持可见,但是如果你滚动掉任意一个元素,第二个元素应该将其不透明度设置为零 有人知道如何做到这一点吗?使用jQuery,您可以执行以下操作 var show = false; $(element1).hover(function() { if(!show) { show
有人知道如何做到这一点吗?使用jQuery,您可以执行以下操作
var show = false;
$(element1).hover(function()
{
if(!show)
{
show = true;
$(element2).fadeIn();
}
});
$(element2).hover(function()
{
if(!show)
{
$(this).fadeIn();
show = true;
}
};
$(element1, element2).mouseleave(function(){$(element2).fadeOut();});
我使用show变量的原因是,如果第二个元素已经显示,您不想使其褪色。通过用逗号分隔不同的选择器,可以在一个集合中组合多个选择器。希望这对你有用。你想要同样的效果,但是用js?不完全正确-在您的示例中,如果我将鼠标悬停在“我在这里”段落上,两者都将保持可见。您可以在我的示例中进行布局吗?然后更改一个CSS规则:像这样?~选择器,但正如您所看到的,您无法控制前一个元素,这使得第一个我在这里淡出,在您将鼠标悬停在下一个元素上后,您需要一个javascript来解决此问题,正如我所知道的,我记得悬停有两个函数参数,鼠标输入和鼠标离开是的,@eicto您是正确的。Hover可以接受两个代理进入和离开。这里是jQuery参考。此外,fadeIn和fadeOut都接受速度或字符串(即慢速)。