JSFiddle - React, Tailwind, and code Playground

by Ali Mousavy

HTML

<script src="http://www.turnjs.com/lib/turn.min.js"></script>
<div id="flipbook">
    <div class="hard"> Turn.js </div> 
    <div class="hard"></div>
    <div> Page 1 </div>
    <div> Page 2 </div>
    <div> Page 3 </div>
    <div> Page 4 </div>
    <div class="hard"></div>
    <div class="hard"></div>
</div>
<br/>
<br/>
<button type="button" id="btnAddContent">Add Page</button>

CSS

body{
    overflow:hidden;
}

#flipbook{
    width:400px;
    height:300px;
}

#flipbook .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

$("#flipbook").turn({
    width: 400,
    height: 300,
    autoCenter: true,
    direction: "rtl"
});

$('#btnAddContent').click(function() {
    addContent();
});

function addContent() {
    var pageCount = $('#flipbook').turn('pages') * 1;
    alert(pageCount);
    element = $("<div />", {"class": "p4"}).html("Page 4th");
    $('#flipbook').turn('pages',pageCount++);
$("#flipbook").turn("addPage", element);
   $('#flipbook').turn('pages',pageCount); 
    element2 = $("<div />", {"class": "p5"}).html("Page 5th");
$('#flipbook').turn('pages',pageCount++);
   $("#flipbook").turn("addPage", element2);
    $('#flipbook').turn('pages',pageCount);
    
    alert(pageCount);
}