源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 276|回复: 14

[JavaScript] jquery实现的超出屏幕时把固定层变为定位层的代码

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2010-2-23 16:32:46 | 显示全部楼层 |阅读模式
相信很多人都上过taobao吧,在taobao的产品列表页有一个浮动的用来排序的浮动层,当你拖动滚动条而导致那个排序栏看不到的时候它会自动变为浮动层,一直固定在那里。 非常好的一个用户体验实例。如果不明白的话就看下面的图片吧

淘宝产品列表 http://search1.taobao.com/browse/50010388/…

腾讯财经产业经济 http://finance.qq.com/industry/index.htm

如何实现?
scrollTop是什么?当元素内部的内容高度超过元素本身的高度时就会出现滚动条,随着拖动滚动条而被隐去的上面部分的高度就是scrollTop值。
这种定位层就是当页面触发onscroll事件时,取得scrollTop值并写入定位层CSS属性,使之保持位置。
下面是实例代码
复制代码 代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>定位层</title>
<script type="text/javascript" src="http://img.jb51.net/jslib/jquery/jquery.js"></script>
<style type="text/css">
body{padding:10px;margin:0;}
#box{width:960px;margin:0 auto;}
#box1{width:250px;height:25px;position:relative;}
#box1_1{width:250px;height:25px;line-height:25px;background:#f00;color:#fff;}
p{font-size:24px;margin:10px 0;}
</style>
<script type="text/javascript">
function tools(){
var top=$(document).scrollTop();
if(($.browser.msie==true)&&($.browser.version==6.0)){
if(top>168)$("#box1_1").css({position:"absolute",top:top-168});
}else{
if(top>168)$("#box1_1").css({position:"fixed",top:"-"&top+"px"});
}
if(top<=168)$("#box1_1").css({position:"static",top:0});
}
$(function(){
window.onscroll=tools;
window.onresize=tools;
});
</script>
</head>
<body>
<div id="box">
<p>往下拖动滚动条↓<a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<div id="box1"><div id="box1_1">这里是定位层</div></div>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
<p><a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">jb51.net</a> <a href="//www.jb51.net">脚本之家</a></p>
</div>
</body>
</html>

回复

使用道具 举报

16

主题

2万

回帖

174

积分

注册会员

Rank: 2

积分
174
发表于 2022-8-29 09:32:55 | 显示全部楼层
挺不错的东西
回复 支持 反对

使用道具 举报

9

主题

2万

回帖

420

积分

中级会员

Rank: 3Rank: 3

积分
420
发表于 2022-10-7 21:16:44 | 显示全部楼层
啊,数码撒飒飒飒飒
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

120

积分

注册会员

Rank: 2

积分
120
发表于 2023-1-16 17:10:19 | 显示全部楼层
很不错的玩意
回复 支持 反对

使用道具 举报

2

主题

1万

回帖

146

积分

注册会员

Rank: 2

积分
146
发表于 2023-4-10 00:34:34 | 显示全部楼层
而非为吾问无为谓娃娃
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2023-10-26 21:41:13 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

4

主题

2万

回帖

316

积分

中级会员

Rank: 3Rank: 3

积分
316
发表于 2024-4-28 22:26:16 | 显示全部楼层
呵呵呵呵呵呵呵a
回复 支持 反对

使用道具 举报

13

主题

2万

回帖

85

积分

注册会员

Rank: 2

积分
85
发表于 2024-5-20 07:19:23 | 显示全部楼层
抽根烟,下来看看再说
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

115

积分

注册会员

Rank: 2

积分
115
发表于 2024-6-29 03:31:32 | 显示全部楼层
而非为吾问无为谓娃娃
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2024-9-22 12:06:42 | 显示全部楼层
66666666666
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-30 14:32 , Processed in 0.079260 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表