页面中的平滑滚动——smooth-scroll.js的使用
正常的本页面锚链接跳转的时候跟PPT似的,特别生硬,用户体验非常差。
这时候我们就可以借助smooth-scroll.js这个插件,来实现本页面的平滑的跳转。
1首先,导入必须的JS文件
<script src="js/jquery-1.10.2.js"></script>
<script src="js/jquery.smooth-scroll.min.js"></script>
<script src="js/jquery.ba-bbq.js"></script>
2我们可以这样来调用插件
$('a').smoothScroll({});
3可以根据自己的需要指定一个外部容器,那么滚动就是在这个(#container)容器内发生,而不是在页面级别发生了
$('#container a').smoothScroll();
4我们可以可以通过下面的方式来排除指定容器的包含元素
$('#container a').smoothScroll({
excludeWithin: ['.container2']
});
5通过下面的语句来排除满足指定条件的元素
$('a').smoothScroll({
exclude: ['.rough','#chunky']
});
6调整滑动到哪个位置就停止
$('.backtotop').smoothScroll({
offset: -100
});
7设定一个滑动开始之前的回调函数
$('a').smoothScroll({
beforeScroll: function() {
alert('ready to go!');
}
});
8设定一个滑动结束的回调函数
$('a').smoothScroll({
afterScroll: function() {
alert('we made it!');
}
});
你也可以自己配置参数
$.smoothScroll({
//滑动到的位置的偏移量
offset: 0,
//滑动的方向,可取 'top' 或 'left'
direction: 'top',
// 只有当你想重写默认行为的时候才会用到
scrollTarget: null,
// 滑动开始前的回调函数。`this` 代表正在被滚动的元素
beforeScroll: function() {},
//滑动完成后的回调函数。 `this` 代表触发滑动的元素
afterScroll: function() {},
//缓动效果
easing: 'swing',
//滑动的速度
speed: 400,
// "自动" 加速的系数
autoCoefficent: 2
});
什么?没看懂??没关系!!下边还有一波无脑操作!
只需要把文件导入后,将下边的代码copy进去就可以了,便可轻松实现页面中的平滑滚动
<script>
$(document)
.on('click', 'a[href*="#"]', function() {
if ( this.hash ) {
$.bbq.pushState( '#/' + this.hash.slice(1) );
return false;
}
})
.ready(function() {
$(window).bind('hashchange', function(event) {
var tgt = location.hash.replace(/^#\/?/,'');
if ( document.getElementById(tgt) ) {
$.smoothScroll({scrollTarget: '#' + tgt});
}
}); $(window).trigger('hashchange');
});
</script>
下面就是点击technolog滑动到 id为a1的div区,简单吧!
<a href="#a1">Technology</a>
<div id="a1">
</div>
smooth-scroll.js的下载地址?网上好多好多,找不到正确的?留言邮箱啊,博主服务一条龙。。。
页面中的平滑滚动——smooth-scroll.js的使用的更多相关文章
- 移动设备的HTML页面中图片实现滚动加载
如今移动互联网风靡全球,移动页面的元素也是丰富多彩,一个移动页面的图片超过10张已经是再正常不过的事情了.但是相对,很多移动用户还停留在2G,3G这样的网络中.那么这样带宽的用户,在浏览这样的页面时, ...
- 页面中php传值后循环列表js获取点击的id
页面中php传值后循环列表js获取点击的id值进行js操作 <script type="text/javascript" src="__PUBLIC__/js/jq ...
- js文件需要jsp页面中的div时,此js文件必须在div之后才能获得值,否则获取不到
js文件需要jsp页面中的div时,此js文件必须在div之后才能获得值,否则获取不到 2.图2的内容为directionkey.js的内容
- 在WPF中实现平滑滚动
WPF实现滚动条还是比较方便的,只要在控件外围加上ScrollViewer即可,但美中不足的是:滚动的时候没有动画效果.在滚动的时候添加过渡动画能给我们的软件增色不少,例如Office 2013的滚动 ...
- 如何在pyqt中实现平滑滚动的QScrollArea
平滑滚动的视觉效果 Qt 自带的 QScrollArea 滚动时只能在两个像素节点之间跳变,看起来很突兀.刚开始试着用 QPropertyAnimation 来实现平滑滚动,但是效果不太理想.所以直接 ...
- JS 在open打开的子窗口页面中调用父窗口页面的JS方法
需求的情景如下: 1:做新增或修改等操作的时候打开一个新的浏览器窗口(使用window.open(参数等)方法) 2:在新增或修改等的页面上有返回按钮.重置按钮.保存按钮,对于返回就直接关闭此窗口(使 ...
- html页面中引入自签名证书的js web资源出现net::ERR_CERT_AUTHORITY_INVALID
其实是浏览器客户端对自签名的内容认为不安全引起的,临时方法可以再浏览器中先直接访问下那个自签名的https地址,然后再访问有引用的那个页面就可以了. 以下内容引用自https://www.morong ...
- 前端:微信支付和支付宝支付在pc端和h5页面中的应用
1:h5微信支付 使用的是https://pay.weixin.qq.com/wiki/doc/api/index.html 中的 (1):公司需要首先要配置公众号微信支付地址和测试白名单(支付的时 ...
- 原生js 平滑滚动到页面的某个位置
window.scrollTo() 语法1: window.scrollTo(x-coord,y-coord) x-coord 是文档中的横轴坐标. y-coord 是文档中的纵轴坐标. 例子: w ...
随机推荐
- Object类型知识总结,你掌握了多少?
Object类型 ECMAScript中的对象其实就是一组数据和功能的集合.对象可以通过执行new操作符后跟要创建的对象类型的名称来创建.而创建Object类型的实例并为其添加属性和(或)方 ...
- IOS——触摸事件 视图检测和事件传递
iPhone上有非常流畅的用户触摸交互体验,能检测各种手势:点击,滑动,放大缩小,旋转.大多数情况都是用UI*GestureRecognizer这样的手势对象来关联手势事件和手势处理函数.也有时候,会 ...
- 【2017-04-20】Sql字符串注入式攻击与防御
一.攻击 所谓sql字符串注入式攻击就是在用户输入界面输入一串sql语句,来改变C#中连接数据库要执行的sql语句 通过你写的程序,直接来执行我想要执行的sql语句 例如:在这么一个程序中,sname ...
- 烧录口被初始化为普通IO
烧录口被初始化为普通IO后如果复位端没有的烧录口会导致不能识别烧录器不能下载与调试,因为程序一开始就把端口初始化了,烧录器不能识别,添加复位端口到烧录器(前提是你的烧录器有复位端). 有了复位段之后, ...
- Vue+axios 实现http拦截及路由拦截
现如今,每个前端对于Vue都不会陌生,Vue框架是如今最流行的前端框架之一,其势头直追react.最近我用vue做了一个项目,下面便是我从中取得的一点收获. 基于现在用vue+webpack搭建项目的 ...
- Display:table;妙用,使得左右元素高度相同
我们在设计网页的时候,为了左右能够分明一点,我们经常会在左边元素弄一个border-right,但是出现一个问题,如果左边高度比较小,这根线就短了,下面空了一部分,反正如果在右边的元素弄一个borde ...
- CSS垂直和水平居中
在css中,居中使用十分频繁. 居中分为水平和垂直居中 水平居中十分简单: body{ background:#f90; } body统一为这个颜色 div { margin:0 auto; back ...
- Android系统--输入系统(十一)Reader线程_简单处理
Android系统--输入系统(十一)Reader线程_简单处理 1. 引入 Reader线程主要负责三件事情 获得输入事件 简单处理 上传给Dispatch线程 InputReader.cpp vo ...
- jquery实现网页倒计时
在毕设作品考试模块要做个倒计时,当时间到时自动结束答题.于是在jQuery插件社区找到一个简洁明了的倒计时.先上效果图. 感谢作者hacker(这是黑客的意思么),贴上地址:http://www.jq ...
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(十四)谈谈写博客的原因和项目优化
阶段总结 又到了优化篇的收尾阶段了,这其实是一篇阶段总结性的文章,今天是4月29号,距离第一次发布博客已经两个月零5天,这两个多月的时间,完成了第一个项目ssm-demo的更新,过程中也写了33篇博客 ...