使用jQuery / JavaScript加载页面时,Make元素会消失

时间:2015-11-30 02:51:03

标签: javascript jquery

我有一堆我想隐藏的div,但只有当页面加载时才会隐藏。我有其他代码告诉它在用户滚动时淡入。不幸的是,我尝试使用的代码

$(document).ready(function(){

    $('#intro').css('visibility', 'hidden');
    $('#causes').css('visibility', 'hidden');
    $('#effets').css('visibility', 'hidden');
    $('#traitements').css('visibility', 'hidden');
    $('#conclusion').css('visibility', 'hidden');
    $('#sources').css('visibility', 'hidden');

});

使元素完全消失,当用户滚动时,它们不会重新出现。

这是我用来在用户滚动到适当位置时显示元素的代码示例。所有其他元素使用完全相同的代码,但使用" #intro"取代"#Causes"," #effets"等。

$(window).bind("scroll", function() {


    if ($(this).scrollTop() > 200) {
        $("#intro").fadeIn();
    }

});

3 个答案:

答案 0 :(得分:2)

不确定您使用的是哪个版本的jQuery,但如果它是最新版本之一,您应该使用$.on代替$.bind,它会使用相同的办法。然后,fadeIn不会更改可见性,它会更改元素的显示不透明度。因此,不要添加visibility: hidden;,而是添加display: none;

以下是最终结果:http://jsfiddle.net/Cedriking/jsqff025/

此外,我认为问题是如何让它出现,而不是消失:)

答案 1 :(得分:1)

使用 $('#element').css('display', 'none');

答案 2 :(得分:0)

您可以简单地使用jQuery的show()和hide()方法。你的可能是:

$(document).ready(function(){

    $('#intro').hide();
    $('#causes').hide();
    $('#effets').hide();
    $('#traitements').hide();
    $('#conclusion').hide();
    $('#sources').hide();

});

这是小提琴手:http://jsfiddle.net/tejsoft/utb61zvo/