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

 更新时间:2010年02月23日 16:32:46   作者:  
相信很多人都上过taobao吧,在taobao的产品列表页有一个浮动的用来排序的浮动层,当你拖动滚动条而导致那个排序栏看不到的时候它会自动变为浮动层,一直固定在那里。
非常好的一个用户体验实例。如果不明白的话就看下面的图片吧

淘宝产品列表 http://search1.taobao.com/browse/50010388/…
taobao浮动层实例

腾讯财经产业经济 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="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<div id="box1"><div id="box1_1">这里是定位层</div></div>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
<p><a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">jb51.net</a> <a href="https://www.jb51.net">脚本之家</a></p>
</div>
</body>
</html>

相关文章

  • jQuery 渐变下拉菜单

    jQuery 渐变下拉菜单

    利用jQuery来实现,其实就几行代码的事。即便如此,由于js语言的思维方式,还是一直没有把握好,加上一个css的问题,导致弄了好久才出来效果。
    2009-12-12
  • jquery获取file表单选择文件的路径、名字、大小、类型

    jquery获取file表单选择文件的路径、名字、大小、类型

    今天小编就为大家分享一篇关于jquery获取file表单选择文件的路径、名字、大小、类型,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • html、css和jquery相结合实现简单的进度条效果实例代码

    html、css和jquery相结合实现简单的进度条效果实例代码

    这篇文章主要介绍了html、css和jquery相结合实现简单的进度条效果的实例代码,这个进度条特别简单,首先html里面的话就是一个div里面嵌套一个div,然后写好想要的样式就行了,具有一定的参考借鉴价值,感兴趣的朋友一起看看吧
    2016-10-10
  • jquery mobile实现拨打电话功能的几种方法

    jquery mobile实现拨打电话功能的几种方法

    在做一个便民服务电话,用到移动web中列出的电话,点击需要实现调用通讯录,拨打电话功能,有需要的朋友可以参考一下
    2013-08-08
  • 广泛收集的jQuery拖放插件集合

    广泛收集的jQuery拖放插件集合

    jQuery允许您创造时尚而又用户体验友好的网站,不仅看起来悦目,而且他轻量级的大小负荷使网站响应相当迅速。这是jQuery在Web开发领域如此受重视的原因
    2012-04-04
  • 高效的jQuery代码编写技巧总结

    高效的jQuery代码编写技巧总结

    好的代码会带来速度的提升,快速渲染和响应意味着更好的用户体验。本文主要总结了如何高效的编写jQuery代码的技巧,对提升你的jQuery和javascript代码具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • 基于jquery实现拆分姓名的方法(纯JS版)

    基于jquery实现拆分姓名的方法(纯JS版)

    jquery拆分姓名处理程序如下,纯js实现的,感兴趣的朋友可以参考下哈,希望对你有所帮助
    2013-05-05
  • jquery制作搜狐快站页面效果示例分享

    jquery制作搜狐快站页面效果示例分享

    这篇文章主要介绍了jquery制作搜狐快站页面效果示例,需要的朋友可以参考下
    2014-02-02
  • JQuery中serialize()用法实例分析

    JQuery中serialize()用法实例分析

    这篇文章主要介绍了JQuery中serialize()用法,实例分析了serialize()方法的功能、定义及相关使用技巧,需要的朋友可以参考下
    2015-02-02
  • 基于jQuery的history历史记录插件

    基于jQuery的history历史记录插件

    history历史记录插件可以帮助您回到您的JavaScript支持应用程序/前进按钮和书签。你可以存储到应用程序状态的网址散列和恢复它的状态。
    2010-12-12

最新评论