JSFiddle - React, Tailwind, and code Playground
by dunerunner
HTML
<script src="http://localhost/lib/turnjs/turn.min.js"></script>
<div id="flipbook">
<div>Page 1</div>
<div>Page 2</div>
<div>Page 3</div>
<div>Page 4</div>
<div>Page 5</div>
<div>Page 6</div>
<div>Page 7</div>
<div>Page 8</div>
<div>Page 9</div>
<div>Page 10</div>
</div>
<input type="button" id="prev" value="prev!" />
<input type="button" id="next" value="next!" />
<input type="button" id="act" value="act!" />
<input type="button" id="compress" value="compress!" />
<input type="button" id="decompress" value="decompress!" />
<p>Page: <span id='page'></span>
</p>
<p>Pages: <span id='pages'></span>
</p>
CSS
body {
overflow:hidden;
}
#flipbook {
width:400px;
height:300px;
}
#flipbook .turn-page {
width:400px;
height:300px;
background-color:white;
line-height:300px;
font-size:20px;
text-align:center;
}
#flipbook .page-wrapper {
-webkit-perspective:2000px;
-moz-perspective:2000px;
-ms-perspective:2000px;
-o-perspective:2000px;
perspective:2000px;
}
#flipbook .hard {
background:#ccc !important;
color:#333;
-webkit-box-shadow:inset 0 0 5px #666;
-moz-box-shadow:inset 0 0 5px #666;
-o-box-shadow:inset 0 0 5px #666;
-ms-box-shadow:inset 0 0 5px #666;
box-shadow:inset 0 0 5px #666;
font-weight:bold;
}
#flipbook .odd {
background:-webkit-gradient(linear, right top, left top, color-stop(0.95, #FFF), color-stop(1, #DADADA));
background-image:-webkit-linear-gradient(right, #FFF 95%, #C4C4C4 100%);
background-image:-moz-linear-gradient(right, #FFF 95%, #C4C4C4 100%);
background-image:-ms-linear-gradient(right, #FFF 95%, #C4C4C4 100%);
background-image:-o-linear-gradient(right, #FFF 95%, #C4C4C4 100%);
background-image:linear-gradient(right, #FFF 95%, #C4C4C4 100%);
-webkit-box-shadow:inset 0 0 5px #666;
-moz-box-shadow:inset 0 0 5px #666;
-o-box-shadow:inset 0 0 5px #666;
-ms-box-shadow:inset 0 0 5px #666;
box-shadow:inset 0 0 5px #666;
}
#flipbook .even {
background:-webkit-gradient(linear, left top, right top, color-stop(0.95, #fff), color-stop(1, #dadada));
background-image:-webkit-linear-gradient(left, #fff 95%, #dadada 100%);
background-image:-moz-linear-gradient(left, #fff 95%, #dadada 100%);
background-image:-ms-linear-gradient(left, #fff 95%, #dadada 100%);
background-image:-o-linear-gradient(left, #fff 95%, #dadada 100%);
background-image:linear-gradient(left, #fff 95%, #dadada 100%);
-webkit-box-shadow:inset 0 0 5px #666;
-moz-box-shadow:inset 0 0 5px #666;
-o-box-shadow:inset 0 0 5px #666;
...
JavaScript
//comment bellow
$("#flipbook").turn({
width: 400,
height: 300
});
//$("#flipbook").turn("display", "single");
$('#flipbook').turn("page", 2).turn('stop');
var counter = 7;
var add = function () {
$('#flipbook').turn('pages',10000);
var page = $('#flipbook').turn("page");
var pages = $('#flipbook').turn("pages");
//if (page < 6) {
//setTimeout(function(){
$('#flipbook').turn("addPage", '<div style="background: red; height:100%; width:100%;">Page ' + counter+++'</div>', 21);
$('#flipbook').turn("addPage", '<div style="background: green; height:100%; width:100%;">Page ' + counter+++'</div>', 22);
//},100);
//}
$('#page').html(page);
$('#pages').html(pages);
console.log($('#flipbook').data());
}
var prevb = document.getElementById('prev');
prevb.onclick = function () {
var once = true;
//$('#flipbook').turn("page", page + 2);
$('#flipbook').turn('previous');
};
$('#flipbook').bind("start", function (event, pageObject, turned) {
/* var page = $('#flipbook').turn("page");
var pages = $('#flipbook').turn("pages");
if (page < 6) {
//setTimeout(function(){
$('#flipbook').turn("addPage", '<div style="background: red; height:100%; width:100%;">Page ' + counter+++'</div>', 1);
$('#flipbook').turn("addPage", '<div style="background: green; height:100%; width:100%;">Page ' + counter+++'</div>', 2);
//},100);
}
$('#page').html(page);
$('#pages').html(pages);
console.log($('#flipbook').data());*/
});
$('#flipbook').bind("missing", function (event, pageObject, turned) {
});
/*$('#flipbook').bind("turned", function (event, pageObject, turned) {
if (once) {
once = false;
$('#flipbook').turn('removePage', 1);
var range = $('#flipbook').turn('range');
$('#flipbook').turn('removePage', 1);
$('#flipbook').turn('pages', 6);
console.log($('#flipbook').turn('page'));
...