全面解析Bootstrap中transition、affix的使用方法
一、Transition(过滤)
作为一个基础支持的组件,被其他组件多次引用。实现根据浏览器支持transition的能力,然后绑定动画的结束事件;
创建一个Element;
然后迭代查看此元素支持的transition动画名称
Transition实现的技巧,主要是重写了jquery的event对象,代码如下
$(function () { $.support.transition = transitionEnd() if (!$.support.transition) return $.event.special.bsTransitionEnd = { bindType: $.support.transition.end, delegateType: $.support.transition.end, handle: function (e) { if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) } } })
二、Affix(自动浮动定位)
1、Target参数表示其定位参考节点(应该是产生滚动条的父容器对象),默认是window
2、Data-offset设置的和bottom值,只会用于计算表达式,不会设置到css中
3、三种位置定位样式类
3.1、Affix-到达页面顶部的时候会添加的样式
3.2、Affix在页面中部的时候会添加的样式
3.3、Affix-bottom在页面底部的时候会添加的样式
4、处理公式
4.1、Toptraget的滚动条高度(scrollTop)< 元素设定离顶位置的距离(offsetTop)(判断)
4.1.1、scrollTop设置为元素本身定位的(元素当前定位离文档原点的距离)(非)
4.2、getPinnedOffset获取粘住元素 – target滚动条的
4.3、bottom如果粘住元素是bottom定位的时候,那么bottom就是 target滚动条高度 + target元素的高度 >= 整个文档滚动条高度 – 粘住元素距离底部的高度
4.3.1、如果是非bottom定位
1)、如果offsetTop(元素设定离顶位置的距离)不为空,target的 + getpinnedOffset的值 > 粘住元素当前定位到的值
2)、如果offsetTop为空,target的 + target元素的高度 > 文档高度 – 粘住元素距离底部的高度
4、能改变粘住元素的只有他的,值为文档高度 — 粘住元素高度 — 粘住元素距离底部的高度
5、坑之所在
1)、和bottom一起使用的时候,会出现冲突,原因
Affix-bottom,也就是到达页面底部的时候,bootstrap是用offset来设置的值,给元素加了position:relative值,这就导致在回到页面顶部后,向下滚动时候,没有任何效果
原因行内样式设置的relative会覆盖class中设置的fixed样式
6、
1)、在情况表现良好,在bottom情况下需要自己加入手动控制
2)、应用affix控件,至少要自己重写affix样式,用于控制粘住条的定位。
如果大家还想深入学习,可以点击进行学习,再为大家附一个精彩的专题
本文系列教程整理到 专题中,欢迎点击学习。
以上就是本文的全部内容,希望对大家学习javascript程序设计有所帮助。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指