我正在我的网站上工作,我正在尝试做一个博客部分。在我的html中,我有两个div在父div中休息。两个div共享相同的类选择器。我正在使用jquery隐藏它们内部的文本,直到它翻过来。但是,当你将鼠标悬停在一个div上时,它们具有相同的类选择器,它会在两者中显示文本。如何将它们保留在同一个班级中,但只显示当前正在悬停的div中的文本?
HTML:
<div class="mythoughts">
<div class="date">15FEB2014</div>
<div class="entry">
<p class="vis">Blah ...</p>
</div>
</div>
<div class="mythoughts">
<div class="date">16FEB2014</div>
<div class="entry">
<p class="div">Blah ...</p>
</div>
</div>
jQuery的:
$('.mythoughts').mouseenter(function () {
$('.entry').show();
});
$('.mythoughts').mouseleave(function () {
$('.entry').hide();
});
答案 0 :(得分:1)
您可以使用this
(指当前项目)来获取正确的元素。
更改此代码:
$('.mythoughts').mouseenter(function() {
$('.entry').show(); // shows ALL .entry elements (not desired)
});
到
$('.mythoughts').mouseenter(function() {
$(this).find('.entry').show(); // shows .entry within the hovered .mythoughts
});
答案 1 :(得分:0)
“但是,当你将鼠标悬停在一个div上时,它们具有相同的类选择器,它会显示两者中的文本。”
为什么不区分具有不同ID的div?
<div class="sameclass" id="firstdiv"></div>
<div class="sameclass" id="seconddiv"></div>
例如。
答案 2 :(得分:0)
你可以使用div的id
<div id="unique_id" class="the_same_class">...</div>
id可以由Jquery
调用