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 相关文章推荐
JavaScript验证电子邮箱的函数
Aug 22 Javascript
js的window.showModalDialog及window.open用法实例分析
Jan 29 Javascript
Javascript中的Prototype到底是什么
Feb 16 Javascript
AngularJS实现分页显示数据库信息
Jul 01 Javascript
Three.js学习之文字形状及自定义形状
Aug 01 Javascript
jquery-mobile基础属性与用法详解
Nov 23 Javascript
a标签置灰不可点击的实现方法
Feb 06 Javascript
详解vue2.0+axios+mock+axios-mock+adapter实现登陆
Jul 19 Javascript
学习React中ref的两个demo示例
Aug 14 Javascript
ES10 特性的完整指南小结
Mar 04 Javascript
基于Vue CSR的微前端实现方案实践
May 27 Javascript
浅谈js中的attributes和Attribute的用法与区别
Jul 16 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实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
php中array_multisort对多维数组排序的方法
2020/06/21 PHP
破除网页鼠标右键被禁用的绝招大全
2006/12/27 Javascript
JS链式调用的实现方法
2013/03/07 Javascript
jquery数组封装使用方法分享(jquery数组遍历)
2014/03/25 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
Javascript实现图片轮播效果(一)让图片跳动起来
2016/02/17 Javascript
详解AngularJS控制器的使用
2016/03/09 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
基于Bootstrap的标签页组件及bootstrap-tab使用说明
2017/07/25 Javascript
JS中移除非数字最多保留一位小数
2018/05/09 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
原生JS实现随机点名项目的实例代码
2019/04/30 Javascript
修改Vue打包后的默认文件名操作
2020/08/12 Javascript
在vscode 中设置 vue模板内容的方法
2020/09/02 Javascript
基于python的Tkinter编写登陆注册界面
2017/06/30 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
Python爬虫设置代理IP的方法(爬虫技巧)
2018/03/04 Python
解决python中 f.write写入中文出错的问题
2018/10/31 Python
Python设计模式之状态模式原理与用法详解
2019/01/15 Python
Python使用MyQR制作专属动态彩色二维码功能
2019/06/04 Python
PyQt5下拉式复选框QComboCheckBox的实例
2019/06/25 Python
使用Python自动生成HTML的方法示例
2019/08/06 Python
Python实现随机爬山算法
2021/01/29 Python
Python 求向量的余弦值操作
2021/03/04 Python
中东地区为妈妈们提供一切的头号购物目的地:Sprii
2018/05/06 全球购物
能否解释一下XSS cookie盗窃是什么意思
2012/06/02 面试题
应届生服务员求职信
2013/10/31 职场文书
高中毕业自我鉴定
2013/12/13 职场文书
校园环保建议书
2014/05/14 职场文书
经典团队口号大全
2014/06/21 职场文书
节约用电倡议书
2015/04/28 职场文书
幽默导游词应该怎么写?
2019/08/26 职场文书
vue3中provide && inject的使用
2021/07/01 Vue.js
Nginx使用ngx_http_upstream_module实现负载均衡功能示例
2022/08/05 Servers