我想说当我将鼠标悬停在.project上时,我希望显示p标签。但是我编写的代码同时显示了每个项目的所有p标记。我怎么能说只有当我在那个项目上出现那个项目下的p时。没有添加额外的课程?
$(document).ready(function() {
$('.project').hover(
function () {
$('.project p').css({"visibility":"visible"});
},
function () {
$('.project p').css({"visibility":"hidden"});
}
);
});
答案 0 :(得分:7)
您需要使用this
关键字,为此,您需要使用find()
?
$(document).ready(function() {
$('.project').hover(
function () {
$(this).find('p').css({"visibility":"visible"});
},
function () {
$(this).find('p').css({"visibility":"hidden"});
}
);
});
这是另一种方法
$('.project').on('mouseenter mouseleave', function(e) {
$('p', this).css('visibility', e.type == 'mouseenter' ? 'visible' : 'hidden');
});