使用Javascript旋转背景时,页面跳转到顶部

时间:2013-03-20 15:14:12

标签: javascript jquery

我正在使用javascript旋转背景图片。问题是,每次图像更改时,页面都会跳到顶部。希望这是一个简单的解决方法!

这是我的代码:

<script type='text/javascript'> 
$(window).load(function(){


var initialBg =  $('#slider').css("background-image"); // added

var firstTime = true;
var arr = [initialBg, "url(/wp-content/uploads/2013/03/slider2-explore.png)", "url(/wp-    content/uploads/2013/03/slider3-experience.png)"];
(function recurse(counter) {
    var bgImage = arr[counter];
    if (firstTime == false) {
        $("#slider").fadeOut("slow", function(){
            $('#slider').css('background-image', bgImage);
        });
        $("#slider").fadeIn("slow");
    } else {
        firstTime = false;
    }               
    delete arr[counter];
    arr.push(bgImage);
    setTimeout(function() {
        recurse(counter + 1);
    }, 4500);  
})(0);  

});
</script> 

1 个答案:

答案 0 :(得分:0)

您的页面跳转是因为暂时没有#slider,而其他页面内容会折叠到其空间。试试这个:

#slider_wrapper {
    height: 550px;
}

<div id="slider_wrapper">
    <div id="slider"></div>
</div>

您可能还需要预加载背景图像以防止奇怪的淡入淡出延迟。