希望这个问题不是太傻......我还是初学者!
我正在尝试建立我的投资组合网站,可以在hellothisis.cc
看到我的目标是让版权符号在几秒钟内完全不透明,然后降低到.1不透明度,我相信我成功了。代码可能是贫民窟,但它有效吗?我还希望它有一个悬停属性,当悬停在上面时,会将版权符号更改为完全不透明的红色,然后在移动鼠标时返回淡出的灰色。
到目前为止,这是我的代码,包括版权符号所具有的隐藏和点击功能。
<script type="text/javascript">
$(document).ready(function() {
$(".name").delay(1000).fadeTo('slow', 0.1, function() {
$(".name").hover(function() {
$(this).animate({ opacity: 1 });
});
});
});
$('.bio').hide();
$('.name').click(function(){
$('.bio').fadeToggle(1000);
});
</script>
我现在的问题是,将鼠标悬停在褪色的灰色上后,即使将鼠标移开,它仍保持完全不透明度?非常感谢任何帮助,谢谢!
答案 0 :(得分:0)
直接绑定,你不需要等待延迟+ fadeto完成(+如果有人在那个fadeto期间鼠标悬停它将回到不透明度1,这更符合逻辑imo
$(".name").on({
mouseover : function(e) {
$(this).stop().animate({ opacity: 1 });
},
mouseout : function(e) {
$(this).stop().animate({ opacity: 0.1 });
}
}).delay(1000).fadeTo('slow', 0.1);
编辑:按顺序排列
答案 1 :(得分:0)
您可以使用:
$(".name").hover(function() {
$(this).animate({ opacity: 1 });
}, function(){
$(this).animate({ opacity: .1 });
});
当mouseenter
事件触发时使用第一个函数,第二个函数在调用mouseleave
事件时使用。
但我建议考虑将来event delegation,因为它会更好地为你服务。