如何调整page-flip插件中页面的左右显示方向
如何调整page-flip插件中页面的左右显示方向
Hey Rob, 我之前用过这个page-flip插件,刚好遇到过类似的问题!默认情况下插件会从右侧单页开始展示,所以你会觉得所有页面都出现在右侧,其实只要调整下配置或者页面结构就能解决~
方案1:设置初始显示页面,让左侧自动加载对应内容
插件自带startPage配置项,你可以指定初始加载后显示的页面索引(索引从0开始计数)。默认值是0,只会展示右侧的封面;如果把它设为1,插件会自动在左侧显示索引0的封面,右侧显示索引1的page one,这样一开始就有左右两个页面了:
修改你的index.js代码:
const pageFlip = new PageFlip(document.getElementById('book'), { width: 300, // required parameter - base page width height: 300, // required parameter - base page height startPage: 1 // 添加这行,设置初始显示第1页 }); pageFlip.loadFromHTML(document.querySelectorAll('.my-page')); pageFlip.on('flip', (e)=>{ console.log("click") })
方案2:理解插件页面索引规则,按需调整页面顺序
这个插件的核心布局逻辑是:偶数索引的页面默认显示在右侧,奇数索引的页面显示在左侧。所以如果你想让某个特定页面固定出现在左侧,只要确保它在页面列表中的位置是奇数位就行。
比如你的现有页面顺序对应的索引和位置:
- 索引0:封面(右侧)
- 索引1:page one(左侧)
- 索引2:page two(右侧)
- 索引3:page three(左侧)
- ...
这样翻页时会完全符合常规书籍的阅读逻辑,左侧展示已翻过的页面,右侧展示当前阅读页面。
额外提示:硬封面的特殊处理
你给封面和最后一页加了data-density="hard",这会让它们变成硬壳封面——这类页面默认是单独展示的(仅右侧),翻页后才会和内页形成左右布局,这是插件针对硬封面的正常设计哦~
备注:内容来源于stack exchange,提问作者Rob Lee
相关产品推荐
相关产品推荐

