如果项目列表项悬停在上面,我有一个项目列表,我想在其中显示相关面板。我已经让它工作了,但问题是一旦我将鼠标悬停在链接列表项上,我就无法将鼠标悬停在面板内的内容上,原因很明显,因为我使用了一个mouseleave
函数。
我已经在这几天了,无法弄清楚需要做什么才能使相关面板保持打开状态,因此我可以将鼠标悬停在它上面并单击其中的阅读更多链接。
我尝试在面板上添加一个悬停状态的类,但这似乎也不起作用。
我的 HTML 是:
<div id="item-wrapper">
<ul>
<li><a href="#" id="item-1">Item 1</a>
</li>
<li><a href="#" id="item-2">Item 2</a>
</li>
</ul>
</div>
<div id="panel-1" class="panel">
<h2>This is panel 1!</h2>
<a href="#">read more 1...</a>
</div>
<div id="panel-2" class="panel">
<h2>This is panel 2!</h2>
<a href="#">read more 2...</a>
</div>
我的基本 jQuery 是:
$('#item-1').mouseenter(function () {
$('#panel-1.panel').toggle();
});
$('#item-1').mouseleave(function () {
$('#panel-1.panel').toggle();
});
$('#item-2').mouseenter(function () {
$('#panel-2.panel').toggle();
});
$('#item-2').mouseleave(function () {
$('#panel-2.panel').toggle();
});
...然后我有一些 CSS 设置面板display: none
开始。请注意,如果两个列表项链接都没有悬停,那么如果在此之前已打开面板,则面板应该消失。