利用TweenMax針對HTML頁面製作動畫 – jQuery Mobile篇

在Dreamweaver5.5之後多了一個jQuery Mobile面板,主要是利用jQuery來製作一些行動裝置的元素,接下來這篇文章就利用Dreamweaver提供的幾項元素加上TweenMax來製作手機動畫頁面。

因為這篇文章應用到的動畫功能,依舊和前兩篇差不多,所以就直接看範例吧!首先,第一個範例是利用「jQuery 翻轉切換開關」來控制動畫的播放,除了可以從前面的連結看到這個範例之外,也因為這是特別針對行動裝置所設計的案例,大家也可以在手機輸入「goo.gl/LofiK」網址來觀賞,下面是本範例整個網頁的程式碼:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalabke=no, width=device-width" />
    <title>貓咪欣賞</title>
    <link href="jquery-mobile/jquery.mobile-1.0.min.css" rel="stylesheet" type="text/css">
    <script src="jquery-mobile/jquery-1.6.4.min.js" type="text/javascript"></script>
    <script src="jquery-mobile/jquery.mobile-1.0.min.js" type="text/javascript"></script>
    <script src="src/minified/TweenMax.min.js"></script>
    <style type="text/css">
        * {
            margin: 0px;
            padding: 0px;
        }

        #photo {
            text-align: center;
        }

        #selector {
            text-align: center;
            width: 50%;
            margin-left: auto;
            margin-right: auto;
        }
    </style>
    <script language="javascript">
        var playNo = 1; /* 定義目前播放張數變數 */
        function photoPlay() {
            var controler = document.getElementById("flipswitch");
            if (controler.options[controler.selectedIndex].value == "on") {
                clock = setInterval(timer, 5000);
            } else {
                clearInterval(clock);
            } /* 設定每五秒執行timer函數 */
            function timer() {
                var pic = document.getElementById("photo"); /* 利用pic紀錄畫面中ID為photo的元素 */
                playNo++; /* 增加張數 */
                if (playNo > 19) {
                    playNo = 1;
                } /* 設定超過圖片張數後從頭播放 */
                TweenMax.to(pic, 1, {
                    css: {
                        alpha: 0
                    },
                    ease: Expo.easeIn,
                    onComplete: function () {
                        pic.innerHTML = "<img src=photo/photo" + playNo + ".jpg width=300 height=200>";
                        TweenMax.to(pic, 1, {
                            css: {
                                alpha: 1
                            },
                            ease: Expo.easeOut
                        });
                    }
                });
            }
        }
    </script>
</head>
<body onLoad="photoPlay()">
    <div data-role="page" id="page">
        <div data-role="header">
            <h1>貓咪欣賞</h1>
        </div>
        <div data-role="content">
            <div id="photo"><img src="photo/photo1.jpg"></div>
            <div data-role="fieldcontain" id="selector"> <select name="flipswitch" id="flipswitch"
                    onChange="photoPlay()" data-role="slider">
                    <option value="off">關閉</option>
                    <option value="on" selected>開啟</option>
                </select> </div>
        </div>
        <div data-role="footer">
            <h4>©2012 Copyright Stanley Ma Cloud Research.</h4>
        </div>
    </div>
</body>
</html>

接下來的第二個範例在程式上面會比較複雜,因為想要加強上一個範例的互動性,所以在同樣的範例上面增加「上一張」、「下一張」與「播放控制」的功能,可在手機輸入「goo.gl/GyAVt」網址觀賞,如果你仔細看的話,會發現這個範例中呼叫網頁元素的語法有改變,其實既然是利用jQuery來製作,本來就可以利用jQuery所提供呼叫網頁元素的指令來製作會比較方便,總之是因為有了下面這行語法,才可以利用這種方式來呼叫的喔!

<script src="jquery-mobile/jquery-1.6.4.min.js" type="text/javascript"></script>

下面是本範例整個網頁的程式碼:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalabke=no, width=device-width" />
    <title>貓咪欣賞</title>
    <style type="text/css">
        * {
            margin: 0px;
            padding: 0px;
        }

        #photo {
            text-align: center;
        }

        #selector {
            text-align: center;
            width: 50%;
            margin-left: auto;
            margin-right: auto;
        }

        #count {
            text-align: center;
            width: 50%;
            margin-left: auto;
            margin-right: auto;
            font-size: 12px;
        }
    </style>
    <link href="jquery-mobile/jquery.mobile-1.0.min.css" rel="stylesheet" type="text/css">
    <script src="jquery-mobile/jquery-1.6.4.min.js" type="text/javascript"></script>
    <script src="jquery-mobile/jquery.mobile-1.0.min.js" type="text/javascript"></script>
    <script src="src/minified/TweenMax.min.js"></script>
    <script language="javascript">
        var playing = 1; /* 偵測目前是否為播放中的變數(1為播放0為暫停) */
        var playNo = 1; /* 定義目前播放張數變數 */ /* 執行計時器 */
        function photoPlay() {
            clock = setInterval(timer, 5000);
        } /* 計時執行函數 */
        function timer() {
            playNo++; /* 增加張數 */
            checkPlayNo() /* 呼叫檢查張數是否有誤的函數 */ photoSlide(); /* 呼叫動畫切換照片的函數 */
        } /* 動畫切換照片的函數 */
        function photoSlide() {
            var pic = $("#photo"); /* 利用pic紀錄畫面中ID為photo的元素 */
            TweenMax.to(pic, 0.5, {
                css: {
                    alpha: 0
                },
                ease: Expo.easeIn,
                onComplete: function () {
                    pic.html("<img src=photo/photo" + playNo + ".jpg width=300 height=200>");
                    TweenMax.to(pic, 1, {
                        css: {
                            alpha: 1
                        },
                        ease: Expo.easeOut
                    });
                }
            });
            $("#count").html(playNo + " / 19"); /* 更換顯示張數的文字 */
        } /* 檢查張數是否有誤的函數 */
        function checkPlayNo() {
            if (playNo > 19) {
                playNo = 1;
            } else if (playNo < 1) {
                playNo = 19;
            }
        } /* 前往上一張的函數 */
        function prevFn() {
            clearInterval(clock);
            playNo--;
            checkPlayNo() photoSlide();
            photoPlay();
        } /* 前往下一張的函數 */
        function nextFn() {
            clearInterval(clock);
            playNo++;
            checkPlayNo() photoSlide();
            photoPlay();
        } /* 播放控制函數 */
        function controlFn() {
            if (playing == 1) {
                playing = 0;
                $("#controlBtn").html("播放") clearInterval(clock);
            } else if (playing == 0) {
                playing = 1;
                $("#controlBtn").html("暫停") clock = setInterval(timer, 5000);
            }
        }
    </script>
</head>
<body onLoad="photoPlay()">
    <div data-role="page" id="page">
        <div data-role="header">
            <h1>貓咪欣賞</h1>
        </div>
        <div data-role="content">
            <div id="photo"><img src="photo/photo1.jpg"></div>
            <div data-role="controlgroup" data-type="horizontal" id="selector"><a href="#" data-role="button"
                    id="prevBtn" onClick="prevFn()">上一張</a><a href="#" data-role="button" onClick="controlFn()"><label
                        id="controlBtn">暫停</label></a><a href="#" data-role="button" onClick="nextFn()">下一張</a></div>
            <div id="count">1 / 19</div>
        </div>
        <div data-role="footer">
            <h4>©2012 Copyright Stanley Ma Cloud Research.</h4>
        </div>
    </div>
</body>
</html>

希望大家看過這幾篇「利用TweenMax針對HTML頁面製作動畫」的範例之後,可以更順利的創作出自己的網頁。

You may also like...

244,740 Responses

  1. продвижение сайтов интернет магазины в москве продвижение сайтов интернет магазины в москве .

  2. Dreamcvv表示:

    В переписке у психолога. Телеграм психолог. Получить онлайн консультацию психолога чате.

  3. 1win_uhma表示:

    1win официальный сайт скачать http://cah.forum24.ru/?1-13-0-00001560-000-0-0-1741172791/ .

  4. Wolfsxr表示:

    Психолог в телеграм. Круглосуточная запись на онлайн-консультацию психолога. Чат с психологом в телеге.

  5. Nightzah表示:

    Получить онлайн консультацию психолога чате. Психолог оказывает помощь онлайн в чате. Психолог онлайн анонимно.

  6. WalterCherm表示:

    The most trustworthy pharmacy in the region.
    https://clomidpharm24.top/
    Trusted by patients from all corners of the world.

  7. Cazrdmr表示:

    Добрый день!
    Без наличия диплома трудно было продвинуться по карьере. Сегодня же этот важный документ не дает никаких гарантий, что удастся найти привлекательную работу. Намного более важны профессиональные навыки специалиста, а также его постоянный опыт. Именно из-за этого решение о покупке диплома стоит считать выгодным и целесообразным. Выгодно приобрести диплом об образовании daddycow.com/blogs/view/49545

  8. WalterCherm表示:

    Offering a global touch with every service.
    https://clomidpharm24.top/
    The drive-thru option is a lifesaver.

  9. Cazrtmk表示:

    Здравствуйте!
    Без ВУЗа достаточно сложно было продвигаться по карьерной лестнице. Сегодня же этот документ не дает гарантий, что получится найти престижную работу. Более важны навыки специалиста и его постоянный опыт. Именно из-за этого решение о покупке диплома следует считать мудрым и целесообразным. Приобрести диплом об образовании prof-komplekt.com/club/log/index.php

  10. Sazresp表示:

    Мы изготавливаем дипломы психологов, юристов, экономистов и других профессий по невысоким ценам. Основные преимущества приобретения документов у нас
    Вы приобретаете документ через надежную и проверенную фирму. Это решение позволит вам сэкономить не только много средств, но и время.
    Преимуществ куда больше:
    • Документы изготавливаются на подлинных бланках со всеми отметками;
    • Можно купить дипломы любого ВУЗа РФ;
    • Стоимость во много раз ниже нежели довелось бы платить на очном обучении в университете;
    • Доставка как по столице, так и в другие регионы РФ.
    Заказать диплом о высшем образовании– http://churchid.org/read-blog/8_kupit-attestat.html\ – churchid.org/read-blog/8_kupit-attestat.html

  11. DonaldTyclE表示:

    equilibrado de rotores
    Dispositivos de ajuste: importante para el funcionamiento estable y productivo de las maquinarias.

    En el campo de la tecnología avanzada, donde la productividad y la estabilidad del sistema son de máxima significancia, los sistemas de ajuste cumplen un función fundamental. Estos sistemas específicos están concebidos para balancear y asegurar elementos móviles, ya sea en equipamiento productiva, medios de transporte de movilidad o incluso en dispositivos caseros.

    Para los especialistas en reparación de dispositivos y los técnicos, utilizar con dispositivos de ajuste es importante para promover el desempeño fluido y fiable de cualquier sistema giratorio. Gracias a estas herramientas avanzadas innovadoras, es posible reducir notablemente las oscilaciones, el ruido y la tensión sobre los rodamientos, extendiendo la vida útil de componentes importantes.

    De igual manera relevante es el función que cumplen los sistemas de calibración en la atención al consumidor. El apoyo especializado y el mantenimiento continuo usando estos sistemas permiten ofrecer asistencias de gran nivel, incrementando la satisfacción de los usuarios.

    Para los responsables de proyectos, la aporte en sistemas de calibración y detectores puede ser clave para optimizar la rendimiento y desempeño de sus aparatos. Esto es principalmente trascendental para los inversores que manejan pequeñas y medianas negocios, donde cada detalle es relevante.

    También, los equipos de equilibrado tienen una vasta uso en el ámbito de la seguridad y el monitoreo de calidad. Posibilitan encontrar posibles problemas, evitando arreglos onerosas y problemas a los aparatos. También, los datos generados de estos equipos pueden emplearse para maximizar procesos y incrementar la reconocimiento en sistemas de exploración.

    Las zonas de uso de los dispositivos de ajuste incluyen variadas áreas, desde la manufactura de vehículos de dos ruedas hasta el monitoreo de la naturaleza. No importa si se considera de extensas producciones manufactureras o reducidos espacios de uso personal, los aparatos de ajuste son esenciales para garantizar un desempeño óptimo y libre de detenciones.

  12. Sazrbqi表示:

    Мы изготавливаем дипломы психологов, юристов, экономистов и других профессий по выгодным ценам. Преимущества приобретения документов у нас
    Вы приобретаете диплом в надежной и проверенной компании. Это решение сэкономит не только много денег, но и время.
    Преимуществ куда больше:
    • Дипломы изготавливаем на оригинальных бланках со всеми печатями;
    • Можно купить дипломы любых учебных заведений России;
    • Стоимость во много раз меньше чем понадобилось бы платить на очном обучении в ВУЗе;
    • Максимально быстрая доставка в любые регионы Российской Федерации.
    Заказать диплом института– http://forum-nine.mirbb.com/login\ – forum-nine.mirbb.com/login

  13. Jasonzitte表示:

    Great place with even greater staff.
    where can i get lisinopril
    I appreciate their late hours for those unexpected needs.

  14. Catotd表示:

    Психолог онлайн анонимно. Психолог онлайн анонимно. Получить КОНСУЛЬТАЦИЮ и ПОДДЕРЖКУ профессиональных психологов.

  15. Goodeit表示:

    Круглосуточная запись на онлайн-консультацию психолога. В переписке у психолога. Психолог помогающий искать решения в непростых психологических ситуациях.

  16. Victorprima表示:

    They bridge global healthcare gaps seamlessly.
    cytotec medication ob
    Get here.

  17. La historia de Mike Tyson es una inspiración para muchos atletas | Mike Tyson no solo fue un gran boxeador, sino también un ícono de la cultura pop | Mike Tyson es considerado uno de los mejores boxeadores de todos los tiempos | Los fanáticos del boxeo respetan el legado de Mike Tyson [url=https://mike-tyson.com.mx/]Mike Tyson boxeo[/url] .

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。