好的,我会解释我的问题,同时也会向您展示一个实时版本,以帮助您更好地理解。
我有一组图像,现在它们只是黑色方块。当您将鼠标悬停在广场上时,会有一个简短的描述,其中包含的内容,现在是占位符信息。我有一个导航,当你点击一个类型(在这种情况下,它现在只是a和b)时,它只显示与你点击的内容相关的方块。对于不属于的方块,它将不透明度调暗为0。太棒了,除非它仍然给我一个正方形的描述,即使它变暗为0.没问题,应该能够抛出一个布尔值,并且只有在bool为真时才显示描述。但是,当我尝试它时,这对于Web编程不起作用,感觉就像bool没有得到更新。
示例:
if(testBool)
{
$(".square").hover(function(){
$(".squareIdentA").text($(this).attr("data-text"));
$(".squareIdentA").stop().animate({
opacity: 1
}, 500);
}
现在我认为不用说我会在需要的时候将testbool设置为true,但是当我尝试这个时它不起作用。有道理,因为这是在(文件).ready()之下,所以它只在开始时加载,但如果bool为真,我还能如何实现bool效果只显示某些东西,但在任何情况下都可能是真或假指向用户体验。
难以言语,我想我已正确解释,但如果你想要一个视觉解释,请转到(http://jdmdev.net/projects/portfolio.html#)点击欢迎的东西,点击导航上的'a'或'b',然后你选择的一个你可以悬停在消失的方块上,它仍然显示描述。描述语法是我发布的,所以如果bool为true,我只希望发生这种情况。
答案 0 :(得分:0)
您可以通过向所有选定的类型添加特定类来处理此问题。将其他类添加到您已制作的其他类中。然后在你的悬停功能中,你可以检查褪色的课程是否存在,然后才显示描述。
工作演示 - http://codepen.io/nitishdhar/pen/CdiHa
像这样 -
$(document).ready(function() {
$('.square').hover(
function() {
if($(this).hasClass('in-active')) {
return false;
}
$('.square-data-holder').text($(this).data('content')).fadeIn('slow');
}, function() {
$('.square-data-holder').fadeOut('slow');
});
$('#selectGenre').change(function(){
var genre = $(this).val();
$('.square').removeClass('active').addClass('in-active');
$('.genre-' + genre).removeClass('in-active').addClass('active');
});
});