项目需要,自己写了一个jquery代码,满足目前移动端常见的效果,就是顶部导航栏随屏幕滑动到指定位置,背景由透明变成不透明。该代码在设置随滚动条其他变化时,同样有效,改变其css即可。一般为了过渡自然,我用了css3的过渡效果。这里我只把关键代码给贴出来。
请转载此文的朋友务必附带原文链接,谢谢。
原文链接:http://xuyran.blog.51cto.com/11641754/1830134
jquery代码如下:
1
2
3
4
5
6
7
8
9
10
11
|
$(document).ready(
function
(){
$(window).scroll(
function
() {
var
top = $(
".fenlei"
).offset().top;
//获取指定位置
var
scrollTop = $(window).scrollTop();
//获取当前滑动位置
if
(scrollTop > top){
//滑动到该位置时执行代码
$(
".mui-bar-nav"
).addClass(
"active"
);
}
else
{
$(
".mui-bar-nav"
).removeClass(
"active"
);
}
});
});
|
css代码如下:
1
2
3
4
5
6
7
8
9
10
11
|
.mui-bar-nav{box-shadow:
none
;
background
:rgba(
0
,
0
,
0
,.
5
)}
.mui-bar-nav.active{
background
:rgba(
0
,
0
,
0
,
1
);
transition: background
1
s;
* Firefox
4
*/
-moz-transition:background
1
s;
/* Safari and Chrome */
-webkit-transition:background
1
s;
/* Opera */
-o-transition:background
1
s;
}
|
html代码如下:
1
2
3
4
5
6
|
<
header
class
=
"mui-bar mui-bar-nav"
>
<
a
class
=
"mui-icon mui-icon-arrowdown mui-pull-left"
href
=
"choose-city.html"
>北京</
a
>
<
div
class
=
"mui-input-row mui-search"
>
<
input
type
=
"search"
class
=
"mui-input-clear"
placeholder
=
"商品或店铺"
>
</
div
>
</
header
>
|
效果如下:
本文转自 小旭依然 51CTO博客,原文链接:http://blog.51cto.com/xuyran/1830134