js监听滚动条滚动事件使得某个标签内容始终位于同一位置


Posted in Javascript onJanuary 24, 2014

小知识点,废话不多说,直接上代码

css:

<pre name="code" class="css"><style> 
#anchor:{ 
position:absulate; 
top:40%; 
left:40%; 
width:100px; 
height:100px; 
background-color:red; 
} 
</style></pre><br>

js:
<pre name="code" class="javascript">var auchorTop = $("#anchor").css("top"); 
auchorTop = Number(auchorTop.substring(0, anchorTop.indexOf("p"))); //首先在监听器外部记录某id=anchor的标签的初始位置 
window.onscroll = function () { 
var top = document.documentElement.scrollTop || document.body.scrollTop; 
$("#anchor").css("top", anchorTop + top + "px"); 
};</pre>

html:
<div id="anchor"></div>

在window.onscroll上即可添加滚动条滚动事件,在监听函数中的top=document.documentElement.scrollTop||document.body.scrollTop;之所以这么写,就是避免不同浏览器的兼容性,这里我测试了chrom和ff浏览器,前者支持document.body.scrollTop这个属性,后者支持另一个属性,因此可以用‘||'符号糅合这两个属性,兼容不同浏览器。anchorTop就是目标的开始与浏览器顶部的距离,这里还需要注意的是'#anchor‘这个标签的position:absulate,否则top属性值总是是0px。

当滚动条滚动时,top值变化,随后将'#anchor'的初始top值加上滚动条的top值,即可保持内容始终处于同一位置。

Javascript 相关文章推荐
jquery validate使用攻略 第四步
Jul 01 Javascript
jQuery EasyUI API 中文文档 - Tabs标签页/选项卡
Oct 01 Javascript
jquery ajax 局部刷新小案例
Feb 08 Javascript
后台获取ZTREE选中节点的方法
Feb 12 Javascript
JavaScript中用getDate()方法返回指定日期的教程
Jun 09 Javascript
JavaScript实现定时页面跳转功能示例
Feb 14 Javascript
Angular.js之作用域scope'@','=','&amp;'实例详解
Feb 28 Javascript
js评分组件使用详解
Jun 06 Javascript
JS实现可视化文件上传
Sep 08 Javascript
vue-cli脚手架搭建的项目去除eslint验证的方法
Sep 29 Javascript
bootstrap-table后端分页功能完整实例
Jun 01 Javascript
Vuex实现购物车小功能
Aug 17 Javascript
js利用事件的阻止冒泡实现点击空白模态框的隐藏
Jan 24 #Javascript
JS实现点击链接取消跳转效果的方法
Jan 24 #Javascript
js关于字符长度限制的问题示例探讨
Jan 24 #Javascript
JS方法调用括号的问题探讨
Jan 24 #Javascript
Array栈方法和队列方法的特点说明
Jan 24 #Javascript
js sort 二维数组排序的用法小结
Jan 24 #Javascript
js二维数组排序的简单示例代码
Jan 24 #Javascript
You might like
PHP开发框架总结收藏
2008/04/24 PHP
基于Swoole实现PHP与websocket聊天室
2016/08/03 PHP
in.js 一个轻量级的JavaScript颗粒化模块加载和依赖关系管理解决方案
2011/07/26 Javascript
js实现按Ctrl+Enter发送效果
2014/09/18 Javascript
js淡入淡出焦点图幻灯片效果代码分享
2015/09/08 Javascript
详解JavaScript基于面向对象之创建对象(1)
2015/12/10 Javascript
详解JS面向对象编程
2016/01/24 Javascript
vue.js指令v-model使用方法
2017/03/20 Javascript
微信小程序动态添加分享数据
2017/06/14 Javascript
关于vue.js中实现方法内某些代码延时执行
2019/11/14 Javascript
vue实现单一筛选、删除筛选条件
2020/10/26 Javascript
Python实现备份MySQL数据库的方法示例
2018/01/11 Python
Python3 获取一大段文本之间两个关键字之间的内容方法
2018/10/11 Python
Python标准库json模块和pickle模块使用详解
2020/03/10 Python
pandas的resample重采样的使用
2020/04/24 Python
python实现扫雷游戏的示例
2020/10/20 Python
详解Python利用configparser对配置文件进行读写操作
2020/11/03 Python
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
韩国邮政旗下生鲜食品网上超市:epost
2016/08/27 全球购物
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
英国川宁茶官方网站:Twinings茶
2019/05/21 全球购物
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
初三物理教学反思
2014/01/21 职场文书
春节联欢晚会主持词范文
2014/03/24 职场文书
全国税务系统先进集体事迹材料
2014/05/19 职场文书
高考标语大全
2014/06/05 职场文书
商务英语专业求职信
2014/06/26 职场文书
本溪关门山导游词
2015/02/09 职场文书
2015年化验员工作总结
2015/04/10 职场文书
2015年乡镇安全生产工作总结
2015/05/19 职场文书
酒桌上的开场白
2015/06/01 职场文书
2016年寒假家长评语
2015/10/10 职场文书
2019学生会干事辞职信
2019/06/27 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书
python字典进行运算原理及实例分享
2021/08/02 Python
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python