我有这个div(#callback),它在提交时通过ajax异步加载,用于更新或删除项目。它是您在页面顶部看到的绿色消息框 http://i1379.photobucket.com/albums/ah126/conchairtoe/1_zpsefd13e23.png 并且当它“滚动”时继续: http://i1379.photobucket.com/albums/ah126/conchairtoe/2_zps6b0c658b.png
我目前拥有它,因此它保持在屏幕的可见范围内,具有“固定滚动”效果,但是,我不希望它位于文档的最顶部,除非滚动偏移达到它,当我滚动时,我希望它保持固定。
我希望它位于导航栏下方,而不是叠加在导航栏上,当滚动偏移尚未达到它时。
继承人JS:
// Notification-Message Position
$(window).scroll(function(e){
var el = $('#callback');
if ($(this).scrollTop() > 200 && $el.css('position') != 'fixed'){
$('#callback').css({'position': 'fixed', 'top': '0px'});
}
if ($(this).scrollTop() < 200 && $el.css('position') == 'fixed'){
$('#callback').css({'position': 'static', 'top': '0px'});
}
}); //END Notification-Message Position
这是CSS:
/*FIXED ON SCROLL*/
#callback{
position:fixed;
top:0;
width:100%;
z-index:100;
}
对不起这个愚蠢的问题,但我对此非常陌生。
答案 0 :(得分:1)
使用此,
$(window).scroll(function(e){
var el = $('#callback');
if ($(this).scrollTop() > 200 && $el.css('position') != 'fixed'){
$('#callback').css({'position': 'absolute', 'top': '0px'});
}
if ($(this).scrollTop() < 200 && $el.css('position') == 'fixed'){
$('#callback').css({'position': 'static', 'top': '0px'});
}
}); //EN
和css一样,
/*FIXED ON SCROLL*/
#callback{
position:absolute;
top:0;
width:100%;
z-index:100;
}
答案 1 :(得分:0)
尝试将您的JS代码更改为以下内容:
<强> JS:强>
$(window).scroll(function(e){
var el = $('#callback');
if ($(this).scrollTop() > 200){
$('#callback').css({'top': '75px'}); /* Assuming 75 is the height of you navbar. */
}
if ($(this).scrollTop() < 200){
$('#callback').css({'top': '0px'});
}
});
答案 2 :(得分:0)
试试这个: 只有css:
#callback {
height: 30px;
position: fixed;
right: 0;
top: 0;
width: calc(100% - 250px);
z-index: 100;
background:red;
}
<div style="height:560px" >
<div style="float:left;margin:10px 10px 10px 0">
<input type="submit" name="send_new" value="Send" class="send_button" />
</div>
<div id="callback">
message
</div>
<div id="save_status" style="float:left;padding: 15px 0px;">sdd</div>
</div>