在技术上分析,
以前自己喜欢为某一个功能写一个类,比如,增加滚动条的功能,我会写成:
function Scrollable(domid,ops){
}
Scrollable.prototype.addWheelEvent = function(){}
通过jquery 插件来为dom添加功能的原理:
jQuery 选择器后,返回值的constructor 又是jQuery。这样选择元素可以利用jQuery.fn的函数。
通过扩展jQuery.fn ,实现扩展。
onepage-scroll.js 扩展了以下功能:
transformPage 实现前窗的translate 1页移动,从而实现一页滚动
moveDown 实现向下滚动,并完成附属功能,比如:nav导航状态的改变,history状态的添加
同理,moveUp
这里重点讲下one page scroll 页面布局原理
pages 的父节点,position:relative;
pages position:absolute;
page1 加上样式:top:0;
page2 加上样式:top:100%
page3 加上样式:top:200%
滚动时,修改pages父节点的属性。translate3d(0,-100%,0) ,就到第二页了