我有这个JavaScript
$(window).load(function(){
var $menu = $("header");
var opacity = $menu.css("opacity");
var scrollStopped;
var fadeInCallback = function () {
if (typeof scrollStopped != 'undefined') {
clearInterval(scrollStopped);
}
scrollStopped = setTimeout(function () {
$menu.animate({ opacity: 1 }, "slow");
}, 1400);
}
$(window).scroll(function () {
if (!$menu.is(":animated") && opacity == 1) {
$menu.animate({ opacity: 0 }, "200", fadeInCallback);
} else {
fadeInCallback.call(this);
}
});
});
在滚动中隐藏标题时效果很好,但增加了一些高度:100%;到html,正文和'内容div',隐藏在html和body上的溢出,以及'content div'上的auto,这个javascript不再有效。
知道为什么这个javascript不起作用?是否有修复或其他方法来执行此操作,以便在滚动时标题淡出?
提前致谢
编辑----
JsFiddle - http://jsfiddle.net/sturobson/AMJFG/
较少的CSS小提琴 - http://jsfiddle.net/sturobson/AMJFG/1/
答案 0 :(得分:0)
你的脚本适合我。
但是如果您想尝试其他方法,请尝试以下内容,基于您的,但稍微简化一下:
$(document).ready(function(){
headerFade();
});
function headerFade() {
var $menu = $("header"),
opacity = $menu.css("opacity"),
scrollStopped,
methods = {
init: function(){
$(window).scroll(function () {
(!$menu.is(":animated") && opacity == 1) ? $menu.fadeOut(200, methods.fadeInCallback()) : methods.fadeInCallback();
});
},
fadeInCallback: function(){
clearInterval(scrollStopped);
scrollStopped = setTimeout(function () {
$menu.fadeIn(600);
}, 1400);
}
};
methods.init();
};