将双页添加到turnjs“;书”;
Adding double pages to a turnjs "book"
我创建了一个网站,访问者可以使用turnjs浏览一本书。我把页面作为双页面的jpg,我希望它们被动态加载。
这是代码:
var flipbook = $('.flipbook');
flipbook.turn({
elevation: 50,
gradients: true,
autoCenter: true,
pages: 118,
when: {
missing: function (e, pages) {
for (var i = 0; i < pages.length; i++) {
var n = pages[i];
if(!$(this).turn('hasPage',pages[i])) {
var pagenum = Math.floor(pages[i] / 2) + 1,
src="url(/pages/page_" + pagenum + ".jpg)",
element = $('<div />',{'class': 'double', css:{backgroundImage:src}});
flipbook.turn('addPage',element,n);
}
}
}
}
});
<div class="flipbook">
<!-- Insert content dynamically -->
</div>
不幸的是,这并没有像我希望的那样工作,以下是正在发生的事情:
我在上面发布的代码插入了页面,但每两页都只缩放到其宽度的50%,放在一页上。例如,在第4页上,我有应该是第4&5,在左边的页面上,我有与右边邻居相同的内容。
我把最后一行改为flipbook.turn('addPage',element);
,希望它能自动添加两页,但后来插入的第一页是.p113
,而不是.p1
我还将代码更改为
if(0 == n%2 && !$(this).turn('hasPage',pages[i])) {
var pagenum = Math.floor(pages[i] / 2) + 1,
src="url(/fileadmin/kollektion/2015/pages/page_" + pagenum + ".jpg)",
element = $('<div />',{'class': 'double', css:{backgroundImage:src}});
element.scissor();
flipbook.turn('addPage',element,n);
}
}
但结果只插入了左边的页面。
那么,使用addPage
动态添加双页的最佳方法是什么呢?我在文档或示例中找不到任何关于这方面的信息。
由于作为我的页面的图像被放在<div>
的背景中,因此诀窍是添加一些样式来缩放背景图像并相应地定位它们:
.double{
background-size:200% 100%;
}
.double.even {
background-position: 0% 0%;
}
.double.odd {
background-position: 100% 0%;
}
相关文章:
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 如何在映射数组中添加换行符
- 正在将数据主题添加到所有项目
- ZeroClipboard-在复制之前添加到值
- 我可以在json对象中添加一个函数吗
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 正在SharePoint 2013母版页中添加JQuery移动文件
- 如何添加浮动和非浮动,其他
- 添加文字和评论功能更新Div
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 在函数中添加数组元素的数值
- 如何将歌曲添加到jPlayer
- 在html Select中添加搜索
- Java脚本时间添加
- FabricJs-限制主对象内添加对象的移动区域
- JQuery添加元素需要在我的js之前再次添加JQuery脚本
- 如何在Google柱状图中动态添加行/列
- 正在尝试使用if和else添加类,但无法正常工作
- 将双页添加到turnjs“;书”;