0

次の例を読みました

そして、スライドでページを切り替える例を作成しようとしています.現在のページが左にスライドすると、次のスライドはそれと一緒に移動しません(スクローラーのように)。

これが私のコードです:

<!DOCTYPE html>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">

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

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<style>
    html{
        margin: 0;
        padding: 0;
        border: 0;
        width: 100%;
        height: 100%;
    }

    #wrapper{
         background-color: #000000;
         position: absolute;
         width: 100%;
         height: 100%;
         top: 0;
         left: 0;
    }

    .page{
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        visibility: hidden;
        overflow: hidden;
        backface-visibility: hidden;
    }

    .current{
        visibility: visible;
        z-index: 1;
    }
</style>

<script>
    $(document).ready(function(){
        $("#p12").click(function(){

            $("#page1").addClass("pt-page-moveToLeft");
            //$("#page2").addClass("current");
            //$("#page2").addClass("pt-page-moveFromLeft");
            //$("#page1").removeClass("current");
        });
    });

    $(".page").on('transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd', 
    function() {
        alert("finished");
    });
</script>

</head>

<body>
    <div id="wrapper">
        <div id="page1" class="page current" style="background-color: #FF9999;">
            <h1>page1</h1>
            <button id="p12">next</button>
        </div>      
        <div id="page2" class="page" style="background-color: #00ff00;">
            <h1>page2</h1>
        </div>
        <div id="page3" class="page" style="background-color: #0000ff;">
            <h1>page3</h1>
        </div>
    </div>
</body>
</html>

pt-page-moveToLeft2 つのトランジションとを同期するにはどうすればよいpt-page-moveFromLeftですか?

注:私はこれを見つけましが、それも私にとってはうまくいきません

編集:

jsFiddleを参照してください

編集 (2):

私の英語で申し訳ありませんが、ページ 1 からページ 2 を介さずにページ 3 に移動したり、他の遷移を使用したりする機能をサポートしないことを意味していました。

4

2 に答える 2

1

私は質問を理解したかどうか確信が持てません..これはさらに役に立ちますか? Jsフィドル

$(document).ready(function(){
    $("#p12").click(function(){

        $("#page1").removeClass('current').addClass("is-left");

    });
});

$(".page").on('transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd', 
    function() {
        $("#page2").addClass("current").removeClass('is-right');
    });

また、次回はフィドルを作成して質問にリンクしてください。これにより、コードをコピー/貼り付ける必要がなくなります。

これが私がそれをやった方法です

Jsフィドル

于 2013-07-16T07:55:52.617 に答える
1

これは簡単な例です: http://jsfiddle.net/jcXDf/2/

次の jQuery コードを使用します。

$(document).ready(function(){
  $("button").click(function(){

  $("#page1").animate({"left": "-100%"}, "fast");
  $("#page2").animate({"left": "0"}, "fast");

  });
});

もちろん、複数のページに合わせて変更することもできます。

編集 この拡張例はあなたのニーズに合うはずです: http://jsfiddle.net/jcXDf/4/

于 2013-07-16T08:41:05.443 に答える