- Getting Started
- edpx-mobile v1.0.0
- rebas
- rider
- saber-ajax
- saber-cookie
- saber-dom
- saber-emitter
- saber-env
- saber-fastbutton
- saber-firework
- saber-firework v2.0.0
- saber-firework v2.0.0-beta.2
- saber-firework v2.0.0-beta.1
- saber-firework v2.0.0-alpha.2
- saber-firework v2.0.0-alpha.1
- saber-firework v1.0.0
- saber-firework v0.4.2
- saber-firework v0.4.1
- saber-firework v0.4.0
- saber-firework v0.3.2
- saber-firework v0.3.1
- saber-firework v0.3.0
- saber-firework v0.2.6
- saber-firework v0.2.5
- saber-firework v0.2.4
- saber-firework v0.2.1
- saber-firework v0.2.0
- saber-firework v0.1.0-beta.4
- saber-firework v0.1.0-beta.3
- saber-firework v0.1.0-beta.1
- saber-geo v0.1.0
- saber-lang
- saber-log v0.1.0
- saber-matchmedia
- saber-mm
- saber-promise
- saber-promise v2.1.0
- saber-promise v2.0.0
- saber-promise v2.0.0-beta.1
- saber-promise v2.0.0-alpha.3
- saber-promise v2.0.0-alpha.2
- saber-promise v2.0.0-alpha.1
- saber-promise v1.0.2
- saber-promise v1.0.0
- saber-promise v0.1.2
- saber-promise v0.1.2-beta.3
- saber-promise v0.1.2-beta.2
- saber-promise v0.1.2-beta.1
- saber-promise v0.1.1
- saber-promise v0.1.0
- saber-rainbow
- saber-router
- saber-router v2.0.0
- saber-router v2.0.0-beta.1
- saber-router v2.0.0-alpha.2
- saber-router v2.0.0-alpha.1
- saber-router v1.0.0
- saber-router v0.2.4
- saber-router v0.2.3
- saber-router v0.2.2
- saber-router v0.2.1
- saber-router v0.2.0
- saber-router v0.1.0
- saber-router v0.1.0-beta.5
- saber-router v0.1.0-beta.4
- saber-router v0.1.0-beta.3
- saber-router v0.1.0-beta.2
- saber-router v0.1.0-beta.1
- saber-run
- saber-scroll
- saber-storage
- saber-string
- saber-tap
- saber-uri
- saber-viewport
- saber-viewport v1.1.0
- saber-viewport v1.0.0
- saber-viewport v0.2.12
- saber-viewport v0.2.11
- saber-viewport v0.2.10
- saber-viewport v0.2.9
- saber-viewport v0.2.8
- saber-viewport v0.2.6
- saber-viewport v0.2.5
- saber-viewport v0.2.1-beta.7
- saber-viewport v0.2.1-beta.6
- saber-viewport v0.2.1-beta.5
- saber-viewport v0.2.1-beta.4
- saber-viewport v0.2.1-beta.3
- saber-viewport v0.2.1-beta.2
- saber-viewport v0.2.1-beta.1
- saber-viewport v0.2.0
- saber-viewport v0.1.0
- saber-widget
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
saber-viewport v0.2.1-beta.5
saber-viewport
移动端页面视口管理,提供页面转场功能
Usage
var viewport = require('saber-viewport'); var page; // 引入转场效果 require('saber-viewport/transition/fadeInOut'); // 初始化视口 viewport.init('viewport'); // 加载页面 page = viewport.load(url); // 渲染页面 ... // 使用淡入淡出效果转场页面 page.enter('fadeInOut');
About bar
移动页面顶部或者底部一般都有navigation bar、toolbar之类的,这些部件在页面转场时通常不变化或者特殊变化,通过添加data-viewport-bar
与data-name
自定义dom属性来支持。
比如现在有三个页面A、B、C,顶部都有navigation bar,前两页面bar样式相同,最后一个页面为详情页面,bar上添加了“返回”按钮,大体就如下这般:
<!-- page A --> <body> <div class="nav" data-viewport-bar="navigation" data-name="main"> ... </div> </body> <!-- page B --> <body> <div class="nav" data-viewport-bar="navigation" data-name="main"> ... </div> </body> <!-- page C --> <body> <div class="nav" data-viewport-bar="navigation" data-name="detail"> ... <a>返回</a> </div> </body>
通过data-viewport-bar
分类页面中不同类型的bar,bar的转场切换只会在同类tab之间进行。data-name
表示bar的名称,名称相同的bar转场时不会有变化,而类型相同名称不同的bar之前会有转场效果。
示例中从A切换到B时顶部导航条不会有变化(data-name
相同),而从B切换到C时顶部导航条会进行转场效果(data-name
不同)。
注:saber-viewport
并不控制bar在页面中的位置、样式,这些还是由页面控制。
API
init(ele, options)
初始化视口,ele
为DOM元素或者id,options
为可选配置参数:
options.transition
string
默认转场效果,目前支持slide
滑动转场,fadeInOut
淡入淡出转场options.duration
number
默认转场动画时长,单位为秒options.timing
string
默认转场过渡速度,取值请参考CSS3中的transition-timing-function
options.transform
boolean
是否默认使用css transform进行转场设置,默认为true
。options.loading
boolean|string|Function
转场时加载提示文案,在调用load
与Page.enter
之间出现,默认为false
不显示,为Function
时回调函数的参数为提示文案的容器元素,具体请参见demo/loading.html
注:当使用transform
优化转场效果时需要注意容器内的position:fixed
元素,请参考issue, The Transform Rendering Model
load(string)
创建新页面的容器,返回Page
对象。页面的具体渲染需要通过Page.main
属性获取容器元素后自行完成
Page
页面对象,由load()
方法创建、返回
Page.main
页面的容器元素
Page.enter(type, options)
页面转场,type
转场效果,可选;options
转场效果配置参数,可选
Page.on(eventName, callback)
注册页面事件,可选择eventName
如下:
enter
转场前事件afterenter
转场完成事件leave
页面移除前事件afterleave
页面移除后事件
===
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论