我有两个div
<div class="container">
<div id="top_bar">
<ul>
<li class="mb">Call Us: (+92) 42 3578 1448-9 - Mail: info@mymail.com</li>
</ul>
<div class="social_icons">
<a href="#">FB.icon</a>
</div>
</div>
第二个div
<div class="container">
<div class="navbar-header">
my navigation bar
</div>
</div>
我希望当页面向下滚动然后第二个div位置顶部变为零并修复? 怎么可能,帮助我?
答案 0 :(得分:1)
我已将top_bar
更改为navbar-header
的同一容器,并使用Jquery .scroll()
方法修复滚动时的top_bar
。希望这会有所帮助。
<强> HTML 强>
<div class="container">
<div class="navbar-header">
my navigation bar
</div>
<div id="top_bar">
<ul>
<li class="mb">Call Us: (+92) 42 3578 1448-9 - Mail: info@mymail.com</li>
</ul>
<div class="social_icons">
<a href="#">FB.icon</a>
</div>
</div>
<强> CSS 强>
.container{
height: 2000px;
padding-top: 100px;
}
.navbar-header{
background: #ccc
}
#top_bar{
background: #0390d4
}
.fixed {
position: fixed;
top:0; left:0;
width: 100%; }
<强> JS 强>
$(window).scroll(function(){
var sticky = $('#top_bar'),
scroll = $(window).scrollTop();
if (scroll >= 100) sticky.addClass('fixed');
else sticky.removeClass('fixed');
});
答案 1 :(得分:1)
检查一下 的 Demo 强>
<强> CSS:强>
.sticky{
position:fixed;
width:100%;
top:0px;
left:0px;
}
<强> JS:强>
$(window).scroll(function() {
if ($(this).scrollTop() > 100){
$('.navbar-header').addClass("sticky");
}
else{
$('.navbar-header').removeClass("sticky");
}
});
答案 2 :(得分:0)
jsfiddle上的演示
这是jQuery代码---
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery(window).scroll(function() {
var scroll = jQuery(window).scrollTop();
if (scroll >= 60) {
jQuery(".myDiv").addClass("fixed_div");
}
if (scroll <= 60) {
jQuery(".myDiv").removeClass("fixed_div");
}
});
});
</script>
这是CSS代码---
.myDiv{
background:red;
height:50px;
transition:all .25s;
}
.fixed_div{
position:fixed;
left:10px;
right:10px;
top:10px;
background:blue;
}
这是HTML代码---
<h1>Scroll down to see the effect</h1>
<div class="myDiv">
Scroll Down
</div>