CODE jQuery

本をめくるように画像をみせるjQueryプラグイン「FlipPage」

投稿日:2019年10月20日 更新日:

本をめくるように見せる方法は、以前はFlashを使ったり、複雑なJavaScriptでプログラムを組んだりと面倒でしたが、簡単にjQueryで表現できるようになりました。

div要素を本のページをめくるようにみせたい場合は、この「Flippage」を利用すると実現できます。

サンプルを作ってみました。

本をめくるようにみれるjQueryプラグイン「FlipPage」の使い方は、続きをご覧下さい。

「FlipPage」の設置方法

まずは、Flippage by marcbuilsのサイトから、Download.zipをダウンロードします。

ダウンロードしたzipファイルを解凍します。いろいろなファイルが入っていますが、実際に使うのは以下のファイルになります。

  • jquery.flippage.css
  • jquery.flippage.js
  • jquery.min.js(jQuery CDNを使うときは不要)

まず、<head>~</head>部分にjQuery本体とjquery.flippage.jsを読み込ませる記述をします。読み込ませるパスに注意して下さい。

<script src="js/jquery.min.js"></script>
<script src="js/jquery.flippage.min.js"></script>

もしjQuery CDNを利用する場合は、jQuery 2.x または jQuery 1.xを利用して下さい。jQuery 3系ではうまく動きませんでした。

<script src="https://code.jquery.com/jquery-2.2.4.js" integrity="sha256-iT6Q9iMJYuQiMWNd9lDyBUStIq/8PuOW33aOqmvFpqI=" crossorigin="anonymous"></script>

jquery.flippage.cssを読み込ませます。これもパスに注意して下さい。

<link href="css/jquery.flippage.css" type="text/css" rel="stylesheet" />

続いてscriptを記述します。

<script>
	$('#exemple').flippage({ // #クラス名
		width: 500, // 画像の幅
		height: 333 // 画像の高さ
	});
</script>

<body>部分に表示させる画像を記述します。

<div id="exemple">
    <div><img src="画像Aパス1" style="margin-left: 0px;" /></div>
    <div><img src="画像Aパス1" style="margin-left: -225px;" /></div>
    <!-- 画像幅の半分をマージンさせます。 -->
    <div><img src="画像Bパス2" style="margin-left: 0px;" /></div>
    <div><img src="画像Bパス2" style="margin-left: -225px;" /></div>
    <!-- 以下画像分繰り返し -->
</div>

のように記述します。

最後にサンプルのソースを書いておきますので、どうぞご参考まで。

<!DOCTYPE html>
<html lang="ja">

<head>
    <meta name="viewport" content="width=device-width">
    <meta charset="utf-8">
    <title>FlipPageサンプル|キツネノシッポ</title>
    <!-- jQuery -->
    <script src="js/jquery.min.js"></script>
    <!--  Flippage -->
    <script src="js/jquery.flippage.js"></script>
    <link href="css/jquery.flippage.css" type="text/css" rel="stylesheet" />
    <style>
    body {
        background: #efecec;
    }

    body>div {
        display: block;
        width: 500px;
        height: 333px;
        margin-left: 50px;
        margin-top: 50px;
    }

    .exemples>div {
        background-color: white;
    }
    </style>
    <script>
    (function($) {
        $(document).ready(function() {
            $('.exemples:eq(0)').flippage({
                width: 500,
                height: 333
            });

            $('.exemples:eq(1)').flippage({
                width: 300,
                height: 150
            });
        });
    })(jQuery);
    </script>
    
</head>

<body>

    <body>
        <h1>本をめくるように画像を見せるjQueryプラグイン</h1>
        <div>
            <h2>Exemple 1</h2>
            画像の半分をクリックまたはドラッグするとページがめくれます。
            <div class="exemples">
                <div><img src="img/img1.jpg" style="margin-left: 0px;" /></div>
                <div><img src="img/img1.jpg" style="margin-left: -250px;" /></div>
                <div><img src="img/img2.jpg" style="margin-left: 0px;" /></div>
                <div><img src="img/img2.jpg" style="margin-left: -250px;" /></div>
                <div><img src="img/img3.jpg" style="margin-left: 0px;" /></div>
                <div><img src="img/img3.jpg" style="margin-left: -250px;" /></div>
                <div><img src="img/img4.jpg" style="margin-left: 0px;" /></div>
                <div><img src="img/img4.jpg" style="margin-left: -250px;" /></div>
                <div><img src="img/img5.jpg" style="margin-left: 0px;" /></div>
                <div><img src="img/img5.jpg" style="margin-left: -250px;" /></div>
            </div>
        </div>
        <div>
            <h2>Exemple 2</h2>
            <div class="exemples">
                <div>
                    <h3>Page 1</h3>
                </div>
                <div>
                    <h3>Page 2</h3>
                </div>
                <div>
                    <h3>Page 3</h3>
                </div>
                <div>
                    <h3>Page 4</h3>
                </div>
                <div>
                    <h3>Page 5</h3>
                </div>
                <div>
                    <h3>Page 6</h3>
                </div>
                <div>
                    <h3>Page 7</h3>
                </div>
                <div>
                    <h3>Page 8</h3>
                </div>
            </div>
        </div>
    </body>

</html>

参考:Flippage

-CODE, jQuery
-

Copyright© キツネノシッポ , 2020 All Rights Reserved Powered by STINGER.